Skip to content

Track additional pip packages for python-agent-driver #82

Description

@danbugs

We currently ship 102 pip packages in the python-agent-driver rootfs. This issue tracks additional packages that would be valuable to support.

Feasible to add

These packages have no hard system-level blockers and could be added with moderate effort:

  • matplotlib — C extension, but the Agg backend works headless; highest-value missing package
  • seaborn — pure Python, depends on matplotlib
  • plotnine — pure Python ggplot2-style plotting, depends on matplotlib
  • fuzzywuzzy — pure Python fuzzy string matching
  • memory-profiler — pure Python memory profiling
  • line-profiler — small C extension, straightforward cross-compile
  • psutil — C extension for process/system info; most APIs should work
  • netifaces — small C extension for NIC enumeration
  • svglib — pure Python SVG-to-ReportLab converter; deps already shipped
  • diagrams — pure Python diagram-as-code; graphviz binary optional for PNG render
  • speedtest-cli — pure Python; requires network at runtime

Blocked or impractical

These packages have hard dependencies on system libraries, external binaries, or OS-level subsystems that are unavailable in the Unikraft guest environment:

Package Blocker
aspose-words Proprietary, requires commercial license
av Requires FFmpeg C libraries (libavcodec, libavformat)
cairosvg Requires libcairo, libpango, libgdk-pixbuf
camelot-py Requires ghostscript + tkinter
edgartools Transitive dep pyarrow pulls in concurrent.futures.thread, which crashes Unikraft
ffmpeg-python Wrapper around ffmpeg binary
gtts Wraps Google TTS HTTP API; pure Python but depends on external service
h5py Requires libhdf5 C library
imgkit Wrapper around wkhtmltoimage binary
librosa Requires libsndfile + ffmpeg
moviepy Wrapper around ffmpeg binary
openai-whisper Requires ffmpeg + PyTorch
opencv-python Large C++ build (libopencv)
pdf2image Wrapper around pdftoppm (poppler)
pdfkit Wrapper around wkhtmltopdf binary
pedalboard Spotify audio DSP C++ library
playwright Requires full browser binaries
pyautogui Requires X11/display subsystem
pygraphviz Requires graphviz C libraries
PyMuPDF Requires MuPDF C library
pypandoc Wrapper around pandoc binary
pyperclip Requires X11 clipboard tools
pytesseract Wrapper around tesseract-ocr binary
pyttsx3 Requires OS TTS engine (espeak/SAPI)
pywin32 Windows-only (Win32 API)
pyzbar Requires libzbar C library
scapy Requires raw socket / pcap access
selenium Requires chromedriver/geckodriver binary
soundfile Requires libsndfile C library
spacy Large NLP C extensions + runtime model downloads (~100 MB+)
tabula-py Wrapper around tabula Java JAR
weasyprint Requires Pango, Cairo, GDK-pixbuf system libraries
wmi Windows-only (WMI COM interface)
py-spy Rust sampling profiler binary

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions