.deb packages

Plugin to generate .deb packages

License

License

Categories

Categories

Maven Build Tools
GroupId

GroupId

com.aerse.maven
ArtifactId

ArtifactId

deb-maven-plugin
Last Version

Last Version

1.16
Release Date

Release Date

Type

Type

maven-plugin
Description

Description

.deb packages
Plugin to generate .deb packages
Project URL

Project URL

https://github.com/dernasherbrezon/deb-maven-plugin
Source Code Management

Source Code Management

https://github.com/dernasherbrezon/deb-maven-plugin

Download deb-maven-plugin

How to add to project

<plugin>
    <groupId>com.aerse.maven</groupId>
    <artifactId>deb-maven-plugin</artifactId>
    <version>1.16</version>
</plugin>

Dependencies

compile (8)

Group / Artifact Type Version
org.freemarker : freemarker jar 2.3.28
com.aerse : ar jar 2.4
org.apache.maven : maven-core jar 3.6.0
org.apache.maven : maven-plugin-api jar 3.6.0
org.apache.maven : maven-artifact jar 3.6.0
org.apache.maven : maven-model jar 3.6.0
org.apache.maven.plugin-tools : maven-plugin-annotations Optional jar 3.6.0
org.apache.commons : commons-compress jar 1.19

test (4)

Group / Artifact Type Version
junit : junit jar 4.13.1
org.apache.maven : maven-compat jar 3.6.0
org.apache.maven.plugin-testing : maven-plugin-testing-harness jar 3.3.0
org.slf4j : slf4j-log4j12 jar 1.7.25

Project Modules

There are no modules declared in this project.

deb-maven-plugin Build Status Quality Gate Status

maven plugin for .deb packaging. Control file generated from pom.xml. Required fields:

  • description
  • name
  • developers. At least 1 developer with valid email and name. This email will be used for maintainer section.

Custom installation scripts

.deb file supports installation scripts. See manual. Plugin supports these scripts as well. They should be placed into ./src/main/deb/. Supported scripts:

  • preinst
  • postinst
  • prerm
  • postrm

configuration

Parameter Filter property name Description
unixUserId ${config.unixUserId} User name for application files permissions.
unixGroupId ${config.unixGroupId} User group name for application files permissions.
installDir The directory into which the artefact is going to be installed. This value is optional. `/home/unixUserId` will be used if omitted
osDependencies List of ubuntu dependencies. Example: <logrotate>>=3.7.8</logrotate>. This will add .deb package dependency logrotate with version >=3.7.8
javaServiceWrapper Support tanuki service wrapper. This will create daemon configuration in `/etc/init.d/` directory and configure to use tanuki service wrapper
fileSets/fileSet* File set to include into final .deb. Could be file or directory
attachArtifact true/false. Attach artifact to project
customCopyRightFile Optional. File containing custom copyright, Useful if your package contains files with several different licenses
generateVersion true/false. Default true. Auto generate .deb version from current time according to the pattern ```yyyyMMddHHmmss```. If false - version will be taken from the project's version

fileSet

Parameter Description
source source file or directory. Wildcards ARE NOT supported.
target target file or directory in result .deb file. Absolute paths will be placed in the corresponding absolute paths on the filesystem. Relative paths will be placed relative to the "installDir" parameter

Sample configuration

<plugin>
	<groupId>com.aerse.maven</groupId>
	<artifactId>deb-maven-plugin</artifactId>
	<version>1.9</version>
	<executions>
		<execution>
			<id>package</id>
			<phase>package</phase>
			<goals>
				<goal>package</goal>
			</goals>
		</execution>
	</executions>
	<configuration>
		<unixUserId>ubuntu</unixUserId>
		<unixGroupId>ubuntu</unixGroupId>
		<installDir>/usr/bin</installDir>
		<osDependencies>
			<openjdk-7-jdk></openjdk-7-jdk>
			<nginx></nginx>
			<logrotate>>=3.7.8</logrotate>
			<imagemagick></imagemagick>
			<maven></maven>
		</osDependencies>
		<customCopyRightFile>${project.basedir}/src/main/resources/customText.txt</customCopyRightFile>
		<javaServiceWrapper>true</javaServiceWrapper>
		<fileSets>
			<fileSet>
				<source>${basedir}/src/main/deb</source>
				<target>/</target>
			</fileSet>
		</fileSets>
	</configuration>
</plugin>

Versions

Version
1.16
1.12
1.11
1.10
1.9
1.8
1.7
1.6
1.5
1.4
1.3
1.2
1.1
1.0