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

<refentry id="flatpak-document-export">

    <refentryinfo>
        <title>flatpak document-export</title>
        <productname>flatpak</productname>

        <authorgroup>
            <author>
                <contrib>Developer</contrib>
                <firstname>Alexander</firstname>
                <surname>Larsson</surname>
                <email>alexl@redhat.com</email>
            </author>
        </authorgroup>
    </refentryinfo>

    <refmeta>
        <refentrytitle>flatpak document-export</refentrytitle>
        <manvolnum>1</manvolnum>
    </refmeta>

    <refnamediv>
        <refname>flatpak-document-export</refname>
        <refpurpose>Export a file to a sandboxed application</refpurpose>
    </refnamediv>

    <refsynopsisdiv>
            <cmdsynopsis>
                <command>flatpak document-export</command>
                <arg choice="opt" rep="repeat">OPTION</arg>
                <arg choice="plain">FILE</arg>
            </cmdsynopsis>
    </refsynopsisdiv>

    <refsect1>
        <title>Description</title>

        <para>
            Creates a document id for a local file that can be exposed to
            sandboxed applications, allowing them access to files that they
            would not otherwise see. The exported files are exposed in a
            fuse filesystem at <filename>/run/user/$UID/doc/</filename>.
        </para>

        <para>
            This command also lets you modify the per-application
            permissions of the documents, granting or revoking access
            to the file on a per-application basis.
        </para>

    </refsect1>

    <refsect1>
        <title>Options</title>

        <para>The following options are understood:</para>

        <variablelist>
            <varlistentry>
                <term><option>-h</option></term>
                <term><option>--help</option></term>

                <listitem><para>
                    Show help options and exit.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>-u</option></term>
                <term><option>--unique</option></term>

                <listitem><para> Don't reuse an existing document id
                for the file.  This makes it safe to later remove the
                document when you're finished with it.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>-t</option></term>
                <term><option>--transient</option></term>

                <listitem><para>
                  The document will only exist for the length of
                  the session. This is useful for temporary grants.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>-n</option></term>
                <term><option>--noexist</option></term>

                <listitem><para>
                  Don't require the file to exist already.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>-a</option></term>
                <term><option>--app=APPID</option></term>

                <listitem><para>
                  Grant read access to the specified application. The
                  <option>--allow</option> and <option>--forbid</option> options
                  can be used to grant or remove additional privileges.
                  This option can be used multiple times.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>-r</option></term>
                <term><option>--allow-read</option></term>

                <listitem><para>
                  Grant read access to the applications specified with <option>--app</option>.
                  This defaults to TRUE.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>--forbid-read</option></term>

                <listitem><para>
                  Revoke read access for the applications specified with <option>--app</option>.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>-w</option></term>
                <term><option>--allow-write</option></term>

                <listitem><para>
                  Grant write access to the applications specified with <option>--app</option>.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>--forbid-write</option></term>

                <listitem><para>
                  Revoke write access for the applications specified with <option>--app</option>.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>-d</option></term>
                <term><option>--allow-delete</option></term>

                <listitem><para>
                  Grant the ability to remove the document from the document portal to the applications specified with <option>--app</option>.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>--forbid-delete</option></term>

                <listitem><para>
                  Revoke the ability to remove the document from the document portal from the applications specified with <option>--app</option>.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>-g</option></term>
                <term><option>--allow-grant-permission</option></term>

                <listitem><para>
                  Grant the ability to grant further permissions to the applications specified with <option>--app</option>.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>--forbid-grant-permission</option></term>

                <listitem><para>
                  Revoke the ability to grant further permissions for the applications specified with <option>--app</option>.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>-v</option></term>
                <term><option>--verbose</option></term>

                <listitem><para>
                    Print debug information during command processing.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>--ostree-verbose</option></term>

                <listitem><para>
                    Print OSTree debug information during command processing.
                </para></listitem>
            </varlistentry>
        </variablelist>
    </refsect1>

    <refsect1>
        <title>Examples</title>

        <para>
            <command>$ flatpak document-export --app=org.gnome.gedit ~/test.txt</command>
        </para>
<programlisting>
/run/user/1000/doc/e52f9c6a/test.txt
</programlisting>

    </refsect1>

    <refsect1>
        <title>See also</title>

        <para>
            <citerefentry><refentrytitle>flatpak</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
            <citerefentry><refentrytitle>flatpak-document-unexport</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
            <citerefentry><refentrytitle>flatpak-document-info</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
            <citerefentry><refentrytitle>flatpak-documents</refentrytitle><manvolnum>1</manvolnum></citerefentry>
        </para>

    </refsect1>

</refentry>

