Skip to main content

Mount Bookup .bdb (SQLite) files as a FUSE filesystem exposing Markdown pages.

Project description

Hier ist ein Vorschlag für eine prägnante, aber informative README.md für dein Projekt:

# bookup-fuse

**Mount Bookup `.bdb` (SQLite) databases as a virtual FUSE filesystem** — browse and edit your Bookup pages and sections directly as Markdown files.

## Features

- Mount a Bookup `.bdb` file into a directory
- Exposes two top-level folders:
  - `Pages/` — all pages without section nesting
  - `Sections/` — hierarchical structure of sections containing pages
- Read and edit Markdown content directly via any text editor
- Changes are written back to the `.bdb` database in real time
- Works with standard FUSE mounts on Linux

## Requirements

- **Python** ≥ 3.9
- **libfuse** installed on your system
  Fedora / RHEL:
  ```bash
  sudo dnf install fuse fuse3 fuse3-libs

Debian / Ubuntu:

sudo apt install fuse
  • Python package fusepy (installed automatically with this package)

Installation

pip install bookup-fuse

Or from source:

git clone https://github.com/beimgraben/bookup-fuse.git
cd bookup-fuse
pip install .

Usage

bookup-fuse <bookup_bdb_file> <mount_point>

Example:

bookup-fuse my-notes.bdb /mnt/bookup

This will create a directory structure like:

/mnt/bookup
├── Pages
│   ├── Page One.md
│   └── Another Note.md
├── Sections
│   ├── Work
│   │   └── Task List.md
│   └── Personal
│       ├── Recipes.md
│       └── Journal.md
└── .desktop.ini

Unmounting

fusermount -u /mnt/bookup     # Linux (FUSE)
# or
umount /mnt/bookup

Notes

  • .desktop.ini is included for compatibility with Windows' folder tooltips but can be ignored.
  • Page and section names containing / are automatically sanitized to _ in file names.
  • Timestamps are stored as UNIX epochs in the database.

Development

# Install in editable mode
pip install -e ".[dev]"

# Run from source
python src/bookup_fuse.py my-notes.bdb /mnt/bookup

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bookup_fuse-0.1.2.tar.gz (19.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bookup_fuse-0.1.2-py3-none-any.whl (19.2 kB view details)

Uploaded Python 3

File details

Details for the file bookup_fuse-0.1.2.tar.gz.

File metadata

  • Download URL: bookup_fuse-0.1.2.tar.gz
  • Upload date:
  • Size: 19.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for bookup_fuse-0.1.2.tar.gz
Algorithm Hash digest
SHA256 46aa04a7bf29aa3f7d6abaddf49bb1ca869796c6fe50f4070bc71dc5d38225a5
MD5 3b94540f7b9e7bae33f1c6d347c5992b
BLAKE2b-256 1feb48dab4c78514d1d8356eba359d8f5dbc478f4bcb85514eae5746c6e07a6b

See more details on using hashes here.

File details

Details for the file bookup_fuse-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: bookup_fuse-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 19.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for bookup_fuse-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 e6037dc5f387983733dc906142c1632618f782b00d64c377d0d295d78671ad3b
MD5 d912fff0d6af9adc2167ae6dde639a9a
BLAKE2b-256 2deddd068556db34e05fb4349bd6b05801a4531d2e22d474a71cf080afea072d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page