doc: update readme to specify the opengl dependency
This commit is contained in:
@@ -15,6 +15,27 @@ A local-first paper library engine with a CLI for managing academic papers.
|
|||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
|
### System Dependencies
|
||||||
|
|
||||||
|
For PDF conversion functionality, paperlib requires OpenGL support through MinerU. If you are inside a graphical everionment, you are likely fine. On headless systems, install:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Debian based
|
||||||
|
sudo apt-get install libglvnd0
|
||||||
|
|
||||||
|
# Fedora
|
||||||
|
sudo dnf install libglvnd-glx
|
||||||
|
|
||||||
|
# Arch Linux
|
||||||
|
sudo pacman -S libglvnd
|
||||||
|
|
||||||
|
# Gentoo
|
||||||
|
sudo emerge -av media-libs/libglvnd
|
||||||
|
# or just add media-libs/libglvnd to your @world or some set
|
||||||
|
```
|
||||||
|
|
||||||
|
### Python Package
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Install with uv (recommended)
|
# Install with uv (recommended)
|
||||||
uv add paperlib
|
uv add paperlib
|
||||||
@@ -127,10 +148,36 @@ pip install mineru[core]
|
|||||||
# Convert all pending papers
|
# Convert all pending papers
|
||||||
paperlib convert
|
paperlib convert
|
||||||
|
|
||||||
|
# Retry failed conversions (useful after fixing system dependencies)
|
||||||
|
paperlib convert --retry-failed
|
||||||
|
|
||||||
|
# Force reconvert all papers
|
||||||
|
paperlib convert --force
|
||||||
|
|
||||||
# Convert specific paper
|
# Convert specific paper
|
||||||
paperlib convert --paper-id <paper-id>
|
paperlib convert --paper-id <paper-id>
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Troubleshooting PDF Conversion
|
||||||
|
|
||||||
|
If conversion fails with OpenGL/display errors on headless systems:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Check if MinerU is properly installed
|
||||||
|
uv run mineru --version
|
||||||
|
|
||||||
|
# If you get "libxcb.so.1" or similar errors, install OpenGL support:
|
||||||
|
sudo apt-get install libglvnd0 # Ubuntu/Debian
|
||||||
|
sudo pacman -S libglvnd # Arch Linux
|
||||||
|
sudo dnf install libglvnd-glx # Fedora
|
||||||
|
|
||||||
|
# Test conversion manually
|
||||||
|
mineru -p example.pdf -o /tmp/test_output -b pipeline
|
||||||
|
|
||||||
|
# Check paperlib conversion logs
|
||||||
|
cat path/to/library/papers/.../logs/mineru.log
|
||||||
|
```
|
||||||
|
|
||||||
## Machine-Readable Output
|
## Machine-Readable Output
|
||||||
|
|
||||||
Most commands support `--json` output for automation:
|
Most commands support `--json` output for automation:
|
||||||
@@ -185,7 +232,7 @@ paperlib follows clean architecture principles:
|
|||||||
## Roadmap
|
## Roadmap
|
||||||
|
|
||||||
- [x] Core paper import (local PDF, arXiv)
|
- [x] Core paper import (local PDF, arXiv)
|
||||||
- [x] PDF to Markdown conversion (MinerU integration)
|
- [x] PDF to Markdown conversion (MinerU integration)*
|
||||||
- [x] Metadata management and search indexing
|
- [x] Metadata management and search indexing
|
||||||
- [x] CLI with all basic commands
|
- [x] CLI with all basic commands
|
||||||
- [x] Comprehensive test suite
|
- [x] Comprehensive test suite
|
||||||
@@ -195,6 +242,8 @@ paperlib follows clean architecture principles:
|
|||||||
- [ ] Configuration file support
|
- [ ] Configuration file support
|
||||||
- [ ] Advanced arXiv workflows
|
- [ ] Advanced arXiv workflows
|
||||||
|
|
||||||
|
**Note**: PDF conversion requires `libglvnd` system dependency for OpenGL support on headless systems.
|
||||||
|
|
||||||
## Non-Goals
|
## Non-Goals
|
||||||
|
|
||||||
paperlib is intentionally focused and does NOT include:
|
paperlib is intentionally focused and does NOT include:
|
||||||
|
|||||||
Reference in New Issue
Block a user