No description
Find a file
2026-04-06 13:49:24 +02:00
.github/workflows disable windows build for now 2026-04-05 14:51:23 +02:00
libmxclient go.mod update 2026-04-04 11:09:28 +02:00
mxsmal refactor smal => mxsmal 2026-04-04 21:14:32 +02:00
pygomx propagate build failures 2026-04-05 00:08:55 +02:00
pygomx-deps add meta package for better dependencies handling 2026-03-12 13:08:03 +01:00
.gitignore license headers (& minor misc fixes) 2026-03-12 09:08:23 +01:00
compose.yaml refactor smal => mxsmal 2026-04-04 21:14:32 +02:00
Containerfile.debian refactor smal => mxsmal 2026-04-04 21:14:32 +02:00
LICENSE add license (AGPL3-only) 2026-02-19 14:05:51 +01:00
README.txt update build requirements 2026-04-06 13:49:24 +02:00

monorepos to have the right versions together

libmxclient - golang matrix client library
pygomx - python binding package
smal - python matrix lib


just run the demobot (docker):

docker compose build demobot
docker compose run --rm demobot smalsetup <matrixid>
docker compose up -d demobot

the bot follows each invite (autojoin) and have two commands:
  !stop         - graceful shutdown
  !echo [text]  - in a DM the bot responds with 'text',
                  in regular rooms it is a reply.


binary/package install:

  pip install pygomx
  pip install mxsmal


install from source / develop (venv):

  build requirements:
    golang 1.25+
      git 2.24+
    gcc 4.6+
      windows: gcc built with binutils 2.37+
    python 3.10+


  build configuration is done via env vars

  # one of static, shared
  PYGOMX_BUILD_MODE=static

  # one of none, colm, goolm, vodozemac
  PYGOMX_OLM_FLAVOR=goolm
  # for colm you need libolm-dev installed
  # vodozemac is not supported yet

  (create and activate a venv)

  cd pygomx
  pip install .

  cd ../mxsmal
  pip install [-e] .

usage:

  cd into an empty dir (you might create one)

  smalsetup <matrixid>
    this command creates a credentials file (.mxpass) in the current dir.
    autopickup by all tools & bots that requires credentials, no further configuration required

  commands:
    mxdiscover --help
    mxpassitem --help
    mxwhoami --help
    mxlogout --help
    mxtoken
    mxaccountinfo
    mxclearaccount
    mxserverinfo
    demobot

matrix room:
  #pygomx:matrix.org
  https://matrix.to/#/#pygomx:matrix.org