# dh_systemd_enable

## NAME



           dh_systemd_enable - enable/disable systemd unit files
    


## SYNOPSIS



           **dh_systemd_enable**[_debhelper options_] [**--no-enable**] [**--name=**_name_]
           [_unit file_ ...]
    


## DESCRIPTION



           **dh_systemd_enable** is a debhelper program that is responsible for
           enabling and disabling systemd unit files.
    
           In the simple case, it finds all unit files installed by a package
           (e.g.  bacula-fd.service) and enables them. It is not necessary
           that the machine actually runs systemd during package installation
           time, enabling happens on all machines in order to be able to
           switch from sysvinit to systemd and back.
    
           In the complex case, you can call **dh_systemd_enable** and
           **dh_systemd_start** manually (by overwriting the debian/rules
           targets) and specify flags per unit file. An example is colord,
           which ships colord.service, a dbus-activated service without an
           [Install] section. This service file cannot be enabled or disabled
           (a state called "static" by systemd) because it has no [Install]
           section. Therefore, running dh_systemd_enable does not make sense.
    
           For only generating blocks for specific service files, you need to
           pass them as arguments, e.g. **dh_systemd_enable quota.service** and
           **dh_systemd_enable --name=quotarpc quotarpc.service**.
    


## FILES



           debian/_package_.service, debian/_package_ @.service
               If this exists, it is installed into
               _usr/lib/systemd/system/package.service_ (or
               _usr/lib/systemd/system/package@.service_) in the package build
               directory.
    
           debian/_package_.tmpfile
               If this exists, it is installed into
               usr/lib/tmpfiles.d/_package_.conf in the package build
               directory.
    
           debian/_package_.target, debian/_package_ @.target
               If this exists, it is installed into
               _usr/lib/systemd/system/package.target_ (or
               _usr/lib/systemd/system/package@.target_) in the package build
               directory.
    
           debian/_package_.socket, debian/_package_ @.socket
               If this exists, it is installed into
               _usr/lib/systemd/system/package.socket_ (or
               _usr/lib/systemd/system/package@.socket_) in the package build
               directory.
    
           debian/_package_.mount
               If this exists, it is installed into
               _usr/lib/systemd/system/package.mount_ in the package build
               directory.
    
           debian/_package_.path, debian/_package_ @.path
               If this exists, it is installed into
               _usr/lib/systemd/system/package.path_ (or
               _usr/lib/systemd/system/package@.path_) in the package build
               directory.
    
           debian/_package_.timer, debian/_package_ @.timer
               If this exists, it is installed into
               _usr/lib/systemd/system/package.timer_ (or
               _usr/lib/systemd/system/package@.timer_) in the package build
               directory.
    


## OPTIONS



           **--no-enable**
               Disable the service(s) on purge, but do not enable them on
               install.
    
               **Note** that this option does not affect whether the services are
               started.  That is controlled by dh_systemd_start(1) (using
               e.g. its **--no-start** option).
    
           **--name=**_name_
               Install the service file as _name.service_ instead of the
               default filename, which is the _package.service_. When this
               parameter is used, **dh_systemd_enable** looks for and installs
               files named _debian/package.name.service_ instead of the usual
               _debian/package.service_.
    


## NOTES



           Note that this command is not idempotent. dh_prep(1) should be
           called between invocations of this command (with the same
           arguments). Otherwise, it may cause multiple instances of the same
           text to be added to maintainer scripts.
    
           Note that **dh_systemd_enable** should be run before **dh_installinit**.
           The default sequence in **dh** does the right thing, this note is only
           relevant when you are calling **dh_systemd_enable** manually.
    


* * *