Batis - XDG-based packaging for Linux desktop apps

Thomas Kluyver thomas at
Fri Nov 20 11:30:09 PST 2015

Nearly a year ago, I posted to this list about the need for a better way
to distribute and install desktop applications [1]. There was some
interesting discussion, and people pointed out some existing
alternatives. But I remained convinced that something else was needed.

I've been thinking about the problem and tinkering for a while, and the
result is Batis:

Batis allows developers to package their applications for users on any
distro to conveniently install.

Example applications:

Key features:

- Users get Batis packages directly from application developers, rather
than going through a middleman like Linux distribution repositories. I
expect this to be controversial, but I think it's key for getting users
up to date software.
- Batis uses XDG specs for desktop entries, mimetype definitions and
icon themes, so that apps can integrate with desktop environments.
- Graceful fallback: Batis packages are tarballs, including an which users without Batis can run. A developer could use
Batis to generate tarballs even if they didn't want to mention Batis to
their users.
- Keeps it simple: Batis packages are based on prosaic things like tar
and json - no fancy filesystem features or container technologies. It
should be easy for a developer to to understand what Batis does, as well
as how to use it.

Batis is ready for you to try out, but it's not battle tested yet.
Please don't judge it too harshly by the rough edges of 0.1! Bugs can be
filed here:



More information about the xdg mailing list