---
name: "obus-gen-interface"
section: "1"
platform: "linux"
package: "libobus-ocaml-bin"
version: "1.2.5-1+b9"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/obus-gen-interface"
---

# obus-gen-interface(1)

convert D-Bus introspection files to ocaml code

## NAME

obus-gen-interface - convert D-Bus introspection files to ocaml code

## SYNOPSIS

**obus-gen-interface** \[ *options* \] *input-file*

## DESCRIPTION

**obus-gen-interface** generates an OCaml module from a D-Bus introspection file. The generated module contains methods, signals and properties definitions. It is required for by both client-side and server-side code.

Note that the files generated by **obus-gen-interface** are not meant to be edited.

## OPTIONS

- \-o output-prefix

  Use this name as output prefix. It defaults to the input file name without its extension and extended with "\_interfaces". For example, if the input file name is "foo.xml" (or "foo.obus"), then "obus-gen-interface" will generate "foo\_interfaces.ml" and "foo\_interfaces.mli".

- \-keep-common

  Keeps common interfaces, i.e. all interfaces starting with "org.freedesktop.DBus". By default they are dropped.

- \-mode {both\|client\|server}

  Set the code generation mode. It defaults to "both". In "client" mode, only code for client-side use is generated. In "server" mode, only code for server-side use is generated. In "both" mode, code for client-side and server-side use is generated.

- \-help or --help

  Display a short usage summary and exit.

## AUTHOR

Jérémie Dimino \<jeremie@dimino.org\>

## SEE ALSO

[**obus-introspect**(1)](/obus-introspect/1.md), [**obus-gen-client**(1)](/obus-gen-client/1.md), [**obus-gen-server**(1)](/obus-gen-server/1.md).
