Skip to content
Josh Suereth edited this page Jun 26, 2013 · 4 revisions

The sbt-native-packager is taking the following approach towards design goals:

  • Create hooks for packaging applications in a native (or universal) fashion using platform-specific tools, such as:
    • Windows Installer XML and MSIs
    • RPMs and YUM
    • Debian package manager
    • generic tar/zip
    • Macintosh App bundles Not implemented
  • Create an abstraction layer where a common set of definitions can be used to define a Java/Scala package, and is mapped into the underlying settings for each tool.
    • Define a "universal" zip/tgz layout
    • Define necessary settings, and generic mappings into MSI/DEB/RPM
  • Create application archetypes which generate default scripts and layouts for projects that match a particular pattern. These can be used to auto-package your project for various environments. Example archetypes include:
    • Server (Play web application, Akka server, etc.). this includes init.d style scripts and/or windows service hooks.
    • Command line utility (sbt, giter8, etc.). This includes launcher scripts, via BAT or BASH.
Clone this wiki locally