<?xml version='1.0'?> <!--*-nxml-*-->
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
    "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">

<!--
Copyright 2014 Anne LoVerso <anne.loverso@students.olin.edu>

SPDX-License-Identifier: LGPL-2.0+

This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the
Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA.
-->

<refentry id="ostree">

    <refentryinfo>
        <title>ostree static-delta</title>
        <productname>OSTree</productname>

        <authorgroup>
            <author>
                <contrib>Developer</contrib>
                <firstname>Colin</firstname>
                <surname>Walters</surname>
                <email>walters@verbum.org</email>
            </author>
        </authorgroup>
    </refentryinfo>

    <refmeta>
        <refentrytitle>ostree static-delta</refentrytitle>
        <manvolnum>1</manvolnum>
    </refmeta>

    <refnamediv>
        <refname>ostree-static-delta</refname>
        <refpurpose>Manage static delta files</refpurpose>
    </refnamediv>

    <refsynopsisdiv>
            <cmdsynopsis>
                <command>ostree static-delta list</command>
            </cmdsynopsis>
            <cmdsynopsis>
                <command>ostree static-delta show</command>
            </cmdsynopsis>
            <cmdsynopsis>
                <command>ostree static-delta delete</command>
            </cmdsynopsis>
            <cmdsynopsis>
                <command>ostree static-delta generate</command> <arg choice="req">--to=REV</arg> <arg choice="opt" rep="repeat">OPTIONS</arg>
            </cmdsynopsis>
            <cmdsynopsis>
                <command>ostree static-delta apply-offline</command> <arg choice="opt" rep="repeat">OPTIONS</arg> <arg choice="req">PATH</arg> <arg choice="opt" rep="repeat">KEY-ID</arg>
            </cmdsynopsis>
            <cmdsynopsis>
                <command>ostree static-delta verify</command> <arg choice="opt" rep="repeat">OPTIONS</arg> <arg choice="req">STATIC-DELTA</arg> <arg choice="opt" rep="repeat">KEY-ID</arg>
            </cmdsynopsis>
    </refsynopsisdiv>

    <refsect1>
        <title>Description</title>

        <para>
            List and manipulate static delta files.
        </para>
    </refsect1>

    <refsect1>
        <title>'Generate' Options</title>

        <variablelist>
            <varlistentry>
                <term><option>--from</option>="REV"</term>

                <listitem><para>
                    Create delta from revision REV.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>--to</option>="REV"</term>

                <listitem><para>
                    Create delta to revision REV.  (This option is required.)
                    The delta is from the parent of REV, unless specified otherwise by <option>--from</option>
                    or <option>--empty</option>.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>--empty</option></term>

                <listitem><para>
                    Create delta from scratch.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>--max-usize</option>=SIZE</term>

                <listitem><para>
                    Maximum uncompressed size in megabytes.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>--sign-type</option>=ENGINE</term>

                <listitem><para>
                    Use particular signature engine. Currently
                    available <arg choice="plain">ed25519</arg> and <arg choice="plain">dummy</arg>
                    signature types.

                    The default is <arg choice="plain">ed25519</arg>.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>--sign</option>="KEY-ID"</term>
                <listitem><para>
                        There <literal>KEY-ID</literal> is:
                        <variablelist>
                            <varlistentry>
                                <term><option>for ed25519:</option></term>
                                <listitem><para>
                                        <literal>base64</literal>-encoded secret key for signing.
                                </para></listitem>
                            </varlistentry>

                            <varlistentry>
                                <term><option>for dummy:</option></term>
                                <listitem><para>
                                            ASCII-string used as secret key.
                                </para></listitem>
                            </varlistentry>
                        </variablelist>
                </para></listitem>
            </varlistentry>
        </variablelist>
    </refsect1>

        <refsect1>
            <title>'Apply-offline' Options</title>

            <variablelist>
                <varlistentry>
                    <term><option>KEY-ID</option></term>

                    <listitem><para>
                        <variablelist>
                            <varlistentry>
                                <term><option>for ed25519:</option></term>
                                <listitem><para>
                                        <literal>base64</literal>-encoded public key for verifying.
                                </para></listitem>
                            </varlistentry>

                            <varlistentry>
                                <term><option>for dummy:</option></term>
                                <listitem><para>
                                            ASCII-string used as public key.
                                </para></listitem>
                            </varlistentry>
                        </variablelist>
                    </para></listitem>
                </varlistentry>

                <varlistentry>
                    <term><option>--sign-type</option>=ENGINE</term>

                    <listitem><para>
                        Use particular signature engine. Currently
                        available <arg choice="plain">ed25519</arg> and <arg choice="plain">dummy</arg>
                        signature types.
                    </para></listitem>
                </varlistentry>

                <varlistentry>
                     <term><option>--keys-file</option></term>
                     <listitem><para>
                         Read key(s) from file <filename>filename</filename>.
                     </para></listitem>

                     <listitem><para>
                         Valid for <literal>ed25519</literal> signature type.
                         For <literal>ed25519</literal> this file must contain <literal>base64</literal>-encoded
                         public key(s) per line for verifying.
                     </para></listitem>
                 </varlistentry>

                 <varlistentry>
                     <term><option>--keys-dir</option></term>
                     <listitem><para>
                         Redefine the system path, where to search files and subdirectories with
                         well-known and revoked keys.
                     </para></listitem>
                 </varlistentry>
            </variablelist>
        </refsect1>

    <refsect1>
        <title>'Verify' Options</title>

        <variablelist>
            <varlistentry>
                <term><option>KEY-ID</option></term>

                <listitem><para>
                    <variablelist>
                        <varlistentry>
                            <term><option>for ed25519:</option></term>
                            <listitem><para>
                                    <literal>base64</literal>-encoded public key for verifying.
                            </para></listitem>
                        </varlistentry>

                        <varlistentry>
                            <term><option>for dummy:</option></term>
                            <listitem><para>
                                        ASCII-string used as public key.
                            </para></listitem>
                        </varlistentry>
                    </variablelist>
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>--sign-type</option>=ENGINE</term>

                <listitem><para>
                    Use particular signature engine. Currently
                    available <arg choice="plain">ed25519</arg> and <arg choice="plain">dummy</arg>
                    signature types.

                    The default is <arg choice="plain">ed25519</arg>.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                 <term><option>--keys-file</option></term>
                 <listitem><para>
                     Read key(s) from file <filename>filename</filename>.
                 </para></listitem>

                 <listitem><para>
                     Valid for <literal>ed25519</literal> signature type.
                     For <literal>ed25519</literal> this file must contain <literal>base64</literal>-encoded
                     public key(s) per line for verifying.
                 </para></listitem>
             </varlistentry>

             <varlistentry>
                 <term><option>--keys-dir</option></term>
                 <listitem><para>
                     Redefine the system path, where to search files and subdirectories with
                     well-known and revoked keys.
                 </para></listitem>
             </varlistentry>
        </variablelist>
    </refsect1>

<!-- Can we have an example for when it actually does something?-->
    <refsect1>
        <title>Example</title>
        <para><command>$ ostree static-delta</command></para>
<programlisting>
        (No static deltas)
</programlisting>
    </refsect1>
</refentry>
