python-mnemosyne-memory
LOW
maintainer gee
0 votes
scanned 2026-10-27 07:47:02.942332
Why flagged
Uploaded within the last 14 days with 2 or fewer community votes — little peer review so far.
Triggered rules
Low
Few votes, recently uploaded
zero_votes_recent
Uploaded within the last 14 days with 2 or fewer community votes — little peer review so far.
PKGBUILD
1
# Maintainer: John Ettedgui <git@johne.rojalabs.com>
2
# Upstream: https://github.com/mnemosyne-oss/mnemosyne
3
4
pkgname=python-mnemosyne-memory
5
_pkgname=mnemosyne
6
pkgver=3.15.1
7
pkgrel=1
8
pkgdesc='Zero-cloud AI memory layer, SQLite-backed, single dependency'
9
arch=('any')
10
url='https://github.com/mnemosyne-oss/mnemosyne'
11
license=('MIT')
12
depends=(
13
'python'
14
'python-yaml'
15
)
16
# The AUR mnemosyne flashcard application ships the same /usr/bin/mnemosyne
17
# console script and the same top-level site-packages/mnemosyne/ directory.
18
conflicts=('mnemosyne')
19
makedepends=(
20
'python-build'
21
'python-installer'
22
'python-setuptools'
23
'python-wheel'
24
)
25
checkdepends=(
26
'python-pytest'
27
'python-numpy'
28
'python-cryptography'
29
)
30
optdepends=(
31
'python-mcp: MCP server support (mnemosyne mcp)'
32
'python-cryptography: encrypted sync payloads (mnemosyne sync --encrypt)'
33
'python-huggingface-hub: model downloads for local LLM consolidation (llm extra; runtimes ctransformers/llama-cpp-python are unpackaged)'
34
'python-fastembed: local embedding models (embeddings extra, AUR)'
35
'python-sqlite-vec: vector search acceleration (embeddings extra, AUR)'
36
'python-numpy: binary vector search and SHMR reasoning (optional at runtime)'
37
'uvicorn: web server for mnemosyne-browser'
38
'python-fastapi: web framework for mnemosyne-browser'
39
)
40
source=("$pkgname-$pkgver.tar.gz::https://github.com/mnemosyne-oss/mnemosyne/archive/refs/tags/v$pkgver.tar.gz")
41
sha256sums=('87b837ac254a5bae40aba7039f4acbfd54d0dd38d9d3bf0714836fab667f787d')
42
43
build() {
44
cd "$srcdir/$_pkgname-$pkgver"
45
rm -rf build dist *.egg-info
46
python -m build --wheel --no-isolation
47
}
48
49
check() {
50
cd "$srcdir/$_pkgname-$pkgver"
51
# The suite honors these locations; unset them so a builder's environment
52
# cannot redirect test writes into a shared directory.
53
unset HERMES_HOME MNEMOSYNE_DATA_DIR
54
# Keep HOME inside the build tree: the suite writes under ~/.hermes and
55
# the builder's real home may not be writable.
56
mkdir -p "$srcdir/.test-home"
57
# The in-tree Hermes integration is exercised by part of the suite.
58
export PYTHONPATH="$srcdir/$_pkgname-$pkgver/integrations/hermes/src${PYTHONPATH:+:$PYTHONPATH}"
59
# Run the MCP tests only when python-mcp is available; otherwise skip
60
# the file that hard-requires it.
61
if python -c 'import mcp' >/dev/null 2>&1; then
62
_mcp_ignore=()
63
else
64
_mcp_ignore=(--ignore=tests/test_mcp_server.py)
65
fi
66
# Mirrors the upstream CI lexical-only job, so the suite does not
67
# download embedding models from the network.
68
HOME="$srcdir/.test-home" MNEMOSYNE_NO_EMBEDDINGS=1 \
69
python -m pytest tests/ --tb=short -q "${_mcp_ignore[@]}"
70
}
71
72
package() {
73
cd "$srcdir/$_pkgname-$pkgver"
74
python -m installer --destdir="$pkgdir" dist/*.whl
75
local purelib
76
purelib="$(python -c 'import sysconfig; print(sysconfig.get_path("purelib"))')"
77
# Upstream setuptools config ships examples/ and integrations/ (including
78
# Hermes tests and a nested, non-importable copy) into site-packages;
79
# neither is needed by the installed CLI.
80
rm -rf "$pkgdir$purelib/examples" "$pkgdir$purelib/integrations"
81
# The wheel omits the Hermes provider manifest that mnemosyne-install
82
# symlinks into ~/.hermes/plugins/mnemosyne.
83
install -Dm644 hermes_memory_provider/plugin.yaml \
84
"$pkgdir$purelib/hermes_memory_provider/plugin.yaml"
85
install -Dm644 LICENSE -t "$pkgdir/usr/share/licenses/$pkgname/"
86
# RELEASING.md intentionally omitted (maintainer doc).
87
install -Dm644 README.md CHANGELOG.md -t "$pkgdir/usr/share/doc/$pkgname/"
88
}
89
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-10-27 07:47:02 | Low | 1 |