<?xml version='1.0'?>
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
  "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
<!-- SPDX-License-Identifier: LGPL-2.1-or-later -->

<refentry id="systemd-sleep.conf"
          xmlns:xi="http://www.w3.org/2001/XInclude">
  <refentryinfo>
    <title>systemd-sleep.conf</title>
    <productname>systemd</productname>
  </refentryinfo>

  <refmeta>
    <refentrytitle>systemd-sleep.conf</refentrytitle>
    <manvolnum>5</manvolnum>
  </refmeta>

  <refnamediv>
    <refname>systemd-sleep.conf</refname>
    <refname>sleep.conf.d</refname>
    <refpurpose>Suspend and hibernation configuration file</refpurpose>
  </refnamediv>

  <refsynopsisdiv>
    <para><filename>/etc/systemd/sleep.conf</filename></para>
    <para><filename>/etc/systemd/sleep.conf.d/*.conf</filename></para>
    <para><filename>/run/systemd/sleep.conf.d/*.conf</filename></para>
    <para><filename>/usr/lib/systemd/sleep.conf.d/*.conf</filename></para>
  </refsynopsisdiv>

  <refsect1>
    <title>Description</title>

    <para><command>systemd</command> supports four general
    power-saving modes:</para>

    <variablelist>
      <varlistentry>
        <term>suspend</term>

        <listitem><para>a low-power state
        where execution of the OS is paused,
        and complete power loss might result
        in lost data, and which is fast to
        enter and exit. This corresponds to
        suspend, standby, or freeze states as
        understood by the kernel.
        </para></listitem>
      </varlistentry>

      <varlistentry>
        <term>hibernate</term>

        <listitem><para>a low-power state
        where execution of the OS is paused,
        and complete power loss does not
        result in lost data, and which might
        be slow to enter and exit. This
        corresponds to the hibernation as
        understood by the kernel.
        </para></listitem>
      </varlistentry>

      <varlistentry>
        <term>hybrid-sleep</term>

        <listitem><para>a low-power state
        where execution of the OS is paused,
        which might be slow to enter, and on
        complete power loss does not result in
        lost data but might be slower to exit
        in that case. This mode is called
        suspend-to-both by the kernel.
        </para></listitem>
      </varlistentry>

      <varlistentry>
        <term>suspend-then-hibernate</term>

        <listitem>
          <para>A low power state where the system is initially suspended (the state is stored in
          RAM). If the system supports low-battery alarms (ACPI _BTP), then the system will be woken up by
          the ACPI low-battery signal and hibernated (the state is then stored on disk). Also, if not
          interrupted within the timespan specified by <varname>HibernateDelaySec=</varname> or the estimated
          timespan until the system battery charge level goes down to 5%, then the system will be woken up by the
          RTC alarm and hibernated. The estimated timespan is calculated from the change of the battery
          capacity level after the time specified by <varname>SuspendEstimationSec=</varname> or when
          the system is woken up from the suspend.</para>
        </listitem>
      </varlistentry>

    </variablelist>

    <para>Settings in these files determine what strings
    will be written to
    <filename>/sys/power/disk</filename> and
    <filename>/sys/power/state</filename> by
    <citerefentry><refentrytitle>systemd-sleep</refentrytitle><manvolnum>8</manvolnum></citerefentry>
    when
    <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>
    attempts to suspend or hibernate the machine.
    See
    <citerefentry><refentrytitle>systemd.syntax</refentrytitle><manvolnum>7</manvolnum></citerefentry>
    for a general description of the syntax.</para>
  </refsect1>

  <xi:include href="standard-conf.xml" xpointer="main-conf" />

  <refsect1>
    <title>Options</title>

    <para>The following options can be configured in the
    [Sleep] section of
    <filename>/etc/systemd/sleep.conf</filename> or a
    <filename>sleep.conf.d</filename> file:</para>

    <variablelist class='config-directives'>
      <varlistentry>
        <term><varname>AllowSuspend=</varname></term>
        <term><varname>AllowHibernation=</varname></term>
        <term><varname>AllowSuspendThenHibernate=</varname></term>
        <term><varname>AllowHybridSleep=</varname></term>

        <listitem><para>By default any power-saving mode is advertised if possible (i.e.
        the kernel supports that mode, the necessary resources are available). Those
        switches can be used to disable specific modes.</para>

        <para>If <varname>AllowHibernation=no</varname> or <varname>AllowSuspend=no</varname> is
        used, this implies <varname>AllowSuspendThenHibernate=no</varname> and
        <varname>AllowHybridSleep=no</varname>, since those methods use both suspend and hibernation
        internally. <varname>AllowSuspendThenHibernate=yes</varname> and
        <varname>AllowHybridSleep=yes</varname> can be used to override and enable those specific
        modes.</para></listitem>
      </varlistentry>

      <varlistentry>
        <term><varname>SuspendMode=</varname></term>
        <term><varname>HibernateMode=</varname></term>
        <term><varname>HybridSleepMode=</varname></term>

        <listitem><para>The string to be written to
        <filename>/sys/power/disk</filename> by,
        respectively,
        <citerefentry><refentrytitle>systemd-suspend.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
        <citerefentry><refentrytitle>systemd-hibernate.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, or
        <citerefentry><refentrytitle>systemd-hybrid-sleep.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
        More than one value can be specified by separating
        multiple values with whitespace. They will be tried
        in turn, until one is written without error. If
        neither succeeds, the operation will be aborted.
        </para>

        <para><citerefentry><refentrytitle>systemd-suspend-then-hibernate.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
        uses the value of <varname>SuspendMode=</varname> when suspending and the value of <varname>HibernateMode=</varname> when hibernating.
        </para></listitem>
      </varlistentry>

      <varlistentry>
        <term><varname>SuspendState=</varname></term>
        <term><varname>HibernateState=</varname></term>
        <term><varname>HybridSleepState=</varname></term>

        <listitem><para>The string to be written to
        <filename>/sys/power/state</filename> by,
        respectively,
        <citerefentry><refentrytitle>systemd-suspend.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
        <citerefentry><refentrytitle>systemd-hibernate.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, or
        <citerefentry><refentrytitle>systemd-hybrid-sleep.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
        More than one value can be specified by separating
        multiple values with whitespace. They will be tried
        in turn, until one is written without error. If
        neither succeeds, the operation will be aborted.
        </para>

        <para><citerefentry><refentrytitle>systemd-suspend-then-hibernate.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
        uses the value of <varname>SuspendState=</varname> when suspending and the value of <varname>HibernateState=</varname> when hibernating.
        </para></listitem>
      </varlistentry>

      <varlistentry>
        <term><varname>HibernateDelaySec=</varname></term>

        <listitem>
          <para>The amount of time the system spends in suspend mode before the system is
          automatically put into hibernate mode. Only used by
          <citerefentry><refentrytitle>systemd-suspend-then-hibernate.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
          If the system has a battery, then defaults to the estimated timespan until the system battery charge level goes down to 5%.
          If the system has no battery, then defaults to 2h.</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term><varname>SuspendEstimationSec=</varname></term>

        <listitem>
          <para>The RTC alarm will wake the system after the specified timespan to measure the system battery
          capacity level and estimate battery discharging rate, which is used for estimating timespan until the system battery charge
          level goes down to 5%. Only used by
          <citerefentry><refentrytitle>systemd-suspend-then-hibernate.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
          Defaults to 1h.</para></listitem>
      </varlistentry>
    </variablelist>
  </refsect1>

  <refsect1>
    <title>Example: freeze</title>

    <para>Example: to exploit the <quote>freeze</quote> mode added
    in Linux 3.9, one can use <command>systemctl suspend</command>
    with
    <programlisting>[Sleep]
SuspendState=freeze</programlisting></para>
  </refsect1>

  <refsect1>
    <title>See Also</title>
    <para>
      <citerefentry><refentrytitle>systemd-sleep</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
      <citerefentry><refentrytitle>systemd-suspend.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
      <citerefentry><refentrytitle>systemd-hibernate.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
      <citerefentry><refentrytitle>systemd-hybrid-sleep.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
      <citerefentry><refentrytitle>systemd-suspend-then-hibernate.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
      <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
      <citerefentry><refentrytitle>systemd.directives</refentrytitle><manvolnum>7</manvolnum></citerefentry>
    </para>
  </refsect1>

</refentry>
