Skip to content

Commit

Permalink
Use anonymous refs for all external links
Browse files Browse the repository at this point in the history
Issue in the reST spec, see
sphinx-doc/sphinx#3921 (comment)
for more information.

Fixes/prevents "duplicate explicit target name" errors.
  • Loading branch information
TheAssassin committed Nov 25, 2020
1 parent f2321fe commit 4eb8baf
Show file tree
Hide file tree
Showing 24 changed files with 54 additions and 54 deletions.
8 changes: 4 additions & 4 deletions source/contact.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,22 +3,22 @@
Contact
=======

The AppImage project documentation is brought to you by `the AppImage team <https://github.com/AppImage>`_. The source code is available `on GitHub <https://github.com/AppImage/docs.appimage.org>`_.
The AppImage project documentation is brought to you by `the AppImage team <https://github.com/AppImage>`__. The source code is available `on GitHub <https://github.com/AppImage/docs.appimage.org>`__.

This page outlines how you can contact the team behind AppImage, e.g., to get additional support or have questions answered.


IRC
---

If you have further questions, please feel free to contact the AppImage team. The easiest and fastest way is to join our `IRC channel #appimage <irc://chat.freenode.net/appimage>`_ on `Freenode <https://freenode.net>`_ (`webchat <https://webchat.freenode.net/?channels=appimage>`_).
If you have further questions, please feel free to contact the AppImage team. The easiest and fastest way is to join our `IRC channel #appimage <irc://chat.freenode.net/appimage>`__ on `Freenode <https://freenode.net>`__ (`webchat <https://webchat.freenode.net/?channels=appimage>`__).

.. note::

Please beware that it might take a few minutes/hours until someone will check the chat and might be able to help you, so don't give up too quickly, and leave e.g., the tab open in the background if you can. You can also try at other times again. Please read `this article <https://workaround.org/getting-help-on-irc/>`_ before joining the IRC chat if you are new to IRC.
Please beware that it might take a few minutes/hours until someone will check the chat and might be able to help you, so don't give up too quickly, and leave e.g., the tab open in the background if you can. You can also try at other times again. Please read `this article <https://workaround.org/getting-help-on-irc/>`__ before joining the IRC chat if you are new to IRC.


Forum
-----

A slower but more sustainable way is to use the `Discourse forum <https://discourse.appimage.org>`_. You can log in using your existing Google or GitHub account, or alternatively register a local account with your email address.
A slower but more sustainable way is to use the `Discourse forum <https://discourse.appimage.org>`__. You can log in using your existing Google or GitHub account, or alternatively register a local account with your email address.
6 changes: 3 additions & 3 deletions source/introduction/concepts.rst
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ AppImages are simple to understand. Every AppImage is a regular file, and every
.. _ref-opinion-reusable-frameworks:
.. note::

On a regular basis, `users ask <https://github.com/AppImage/AppImageKit/issues/848>`_ about implementing support for some sort of "reusable/shared frameworks". These frameworks are supposed to contain bundles of libraries which are needed by more than one AppImage, and hence could save some disk space. For management, they suggest complex automagic systems that will automatically fetch the "frameworks" from the Internet if they're not available, or some complicated, mostly manual methods how to users could bundle frameworks together with the AppImages on portable disks like USB sticks.
On a regular basis, `users ask <https://github.com/AppImage/AppImageKit/issues/848>`__ about implementing support for some sort of "reusable/shared frameworks". These frameworks are supposed to contain bundles of libraries which are needed by more than one AppImage, and hence could save some disk space. For management, they suggest complex automagic systems that will automatically fetch the "frameworks" from the Internet if they're not available, or some complicated, mostly manual methods how to users could bundle frameworks together with the AppImages on portable disks like USB sticks.

These may be good ideas for some people, and even if they worked perfectly fine, they'd break with our most important concept: :ref:`one app = one file <one-app-one-file-principle>`. AppImages are so simple to understand *because* every application is a single file. There's no complexity in this approach, even grandma could understand it. And after all, disk space is cheap nowadays, right?

Expand All @@ -35,7 +35,7 @@ The author of an AppImage needs to decide for which target systems (Linux distri

To be able to run on any Linux distribution, an AppImage should bundle all the resources it needs at runtime that cannot be reasonably expected to be "there" in the default installation of all still-supported target systems (Linux distributions). The most common resources are the actual binaries, shared library dependencies, icons and other graphics and of course one or more desktop files for desktop integration.

This doesn't mean an AppImage must not use resources provided by the system, like for example basic libraries that can be assumed to be part of every target system (e.g., the C standard library or graphics libraries), user interface themes or the like. See the `excludelist <https://github.com/AppImage/pkg2appimage/blob/master/excludelist>`_ for a list of the libraries we consider to currently be part of each still-supported target system (distribution).
This doesn't mean an AppImage must not use resources provided by the system, like for example basic libraries that can be assumed to be part of every target system (e.g., the C standard library or graphics libraries), user interface themes or the like. See the `excludelist <https://github.com/AppImage/pkg2appimage/blob/master/excludelist>`__ for a list of the libraries we consider to currently be part of each still-supported target system (distribution).


.. _build-on-old-systems:
Expand All @@ -49,7 +49,7 @@ Applications should be built on the oldest possible system, allowing them to run

It may seem contradictory to :ref:`the previous section <no-external-dependencies>` to rely on distribution provided resources. This is a trade-off between trying to reduce redundancies while at the same time being as self-contained as possible.

In some cases, including the libraries might even break the AppImage on the target system. Those libraries involve, among others, hardware dependent libraries such as graphics card drivers provided libraries (e.g., :code:`libGL.so.1`, (`source <https://github.com/AppImage/pkg2appimage/blob/14c255b528dd88ef3e00ae0446ac6d84a20ac798/excludelist\#L38-L41>`_)), or libraries that are build and linked differently on different distributions (e.g., :code:`libharfbuzz.so.0` and :code:`libfreetype.so.6` (`source <https://github.com/AppImage/pkg2appimage/blob/14c255b528dd88ef3e00ae0446ac6d84a20ac798/excludelist\#L98-L102>`_).
In some cases, including the libraries might even break the AppImage on the target system. Those libraries involve, among others, hardware dependent libraries such as graphics card drivers provided libraries (e.g., :code:`libGL.so.1`, (`source <https://github.com/AppImage/pkg2appimage/blob/14c255b528dd88ef3e00ae0446ac6d84a20ac798/excludelist\#L38-L41>`__)), or libraries that are build and linked differently on different distributions (e.g., :code:`libharfbuzz.so.0` and :code:`libfreetype.so.6` (`source <https://github.com/AppImage/pkg2appimage/blob/14c255b528dd88ef3e00ae0446ac6d84a20ac798/excludelist\#L98-L102>`__).

The list of libraries that can resp. have to be excluded, the so-called :ref:`excludelist <excludelist>`, is carefully curated by the AppImage team, and is regularly updated.

Expand Down
2 changes: 1 addition & 1 deletion source/introduction/quickstart.rst
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ That's it! The AppImage should now be executed.
Translated versions of this guide
*********************************

Translated versions are available in a `post in the AppImage forum <https://discourse.appimage.org/t/how-to-run-an-appimage/80>`_.
Translated versions are available in a `post in the AppImage forum <https://discourse.appimage.org/t/how-to-run-an-appimage/80>`__.


Getting help
Expand Down
8 changes: 4 additions & 4 deletions source/introduction/software-overview.rst
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ AppImage project
AppImageKit
-----------

`AppImageKit <https://github.com/AppImage/AppImageKit>`_ is the reference implementation of the :ref:`AppImage specification <appimage-specification>`. It is split up into several components, which are described in this subsection.
`AppImageKit <https://github.com/AppImage/AppImageKit>`__ is the reference implementation of the :ref:`AppImage specification <appimage-specification>`. It is split up into several components, which are described in this subsection.


.. _ref-runtime:
Expand All @@ -42,7 +42,7 @@ appimagetool is the easiest way to create AppImages from existing directories on

appimagetool implements all optional features, like for instance :ref:`update information <update-information>`, :ref:`signing <signing>`, and some linting options to make sure the information in the AppImage is valid (for instance, it can validate :ref:`AppStream files <appstream-support>`).

**Download:** You can get it as an AppImage from https://github.com/AppImage/AppImageKit/releases/continuous.
**Download:** You can get it as an AppImage from https://github.com/AppImage/AppImageKit/releases/continuous.


AppRun
Expand Down Expand Up @@ -108,7 +108,7 @@ The project consists of two tools: :code:`appimageupdatetool`, a full-featured C
appimaged
---------

`appimaged <https://github.com/AppImage/appimaged>`_ is a daemon that monitors a predefined set of directories on the system, looking for AppImages. It automatically integrates all AppImages it can find during an initial search, and then live watches for new AppImage (or AppImages that were removed) and (de)integrates these immediately.
`appimaged <https://github.com/AppImage/appimaged>`__ is a daemon that monitors a predefined set of directories on the system, looking for AppImages. It automatically integrates all AppImages it can find during an initial search, and then live watches for new AppImage (or AppImages that were removed) and (de)integrates these immediately.

It is shipped in a few native distribution package formats as well as as AppImage.

Expand Down Expand Up @@ -142,7 +142,7 @@ linuxdeploy

linuxdeploy_ is a simple yet flexible, plugins-based to use tool that can be used to create AppDirs and AppImages. It has been developed in 2018, and describes itself as an "AppDir creation and maintenance tool".

linuxdeploy is planned to succeed of :ref:`linuxdeployqt`, and can be used in all projects that use :ref:`linuxdeployqt`. The list of plugins is continually growing, providing solutions for bundling frameworks such as `Qt <https://github.com/linuxdeploy/linuxdeploy-plugin-qt>`_ as well as complete environments for non-native programming languages such as `Python <https://github.com/linuxdeploy/linuxdeploy-plugin-conda>`_.
linuxdeploy is planned to succeed of :ref:`linuxdeployqt`, and can be used in all projects that use :ref:`linuxdeployqt`. The list of plugins is continually growing, providing solutions for bundling frameworks such as `Qt <https://github.com/linuxdeploy/linuxdeploy-plugin-qt>`__ as well as complete environments for non-native programming languages such as `Python <https://github.com/linuxdeploy/linuxdeploy-plugin-conda>`__.

.. _linuxdeploy: https://github.com/linuxdeploy/linuxdeploy

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
pkg2appimage
============

If you already have existing binaries (either in archive or :code:`.deb` format or a ppa) then the recommended way to convert these to an AppImage is to write a `.yml description file <https://github.com/AppImage/pkg2appimage/tree/master/recipes>`_ and run it with `pkg2appimage`_.
If you already have existing binaries (either in archive or :code:`.deb` format or a ppa) then the recommended way to convert these to an AppImage is to write a `.yml description file <https://github.com/AppImage/pkg2appimage/tree/master/recipes>`__ and run it with `pkg2appimage`_.


.. contents:: Contents
Expand All @@ -22,7 +22,7 @@ To build an AppImage from a :code:`.yml` description file, simply run:
bash -ex ./pkg2appimage recipes/XXX.yml
:code:`.yml` description files tell pkg2appimage where to get the ingredients from, and how to convert them to an AppImage (besides the general steps already included in pkg2appimage). Study some `examples <https://github.com/AppImage/pkg2appimage/tree/master/recipes>`_ to see how it works.
:code:`.yml` description files tell pkg2appimage where to get the ingredients from, and how to convert them to an AppImage (besides the general steps already included in pkg2appimage). Study some `examples <https://github.com/AppImage/pkg2appimage/tree/master/recipes>`__ to see how it works.

.. _pkg2appimage: https://github.com/AppImage/pkg2appimage/blob/master/pkg2appimage

Expand All @@ -33,7 +33,7 @@ To build an AppImage from a :code:`.yml` description file, simply run:
- pkg2appimage uses distribution packages downloaded using the package managers, however, the packages are not authenticated, as most security functionality has been deactivated. This is a major security issue. pkg2appimage is therefore recommended for personal use only. Upstream authors should consider :ref:`packaging from source <ref-from-source>`.

.. seealso::
See `this GitHub issue <https://github.com/AppImage/pkg2appimage/issues/197>`_ for more information on the security issue.
See `this GitHub issue <https://github.com/AppImage/pkg2appimage/issues/197>`__ for more information on the security issue.


``.yml`` files
Expand Down
4 changes: 2 additions & 2 deletions source/packaging-guide/distribution.rst
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ You can use a "Download as an AppImage" banner alongside other similar buttons:

Link this banner directly to the latest version of your AppImage, or to a download page containing the link to the latest version of your AppImage.

Banner by `Khushraj Rathod <https://github.com/KhushrajRathod/>`_ under the `CC0 license <https://creativecommons.org/share-your-work/public-domain/cc0/>`_
Banner by `Khushraj Rathod <https://github.com/KhushrajRathod/>`__ under the `CC0 license <https://creativecommons.org/share-your-work/public-domain/cc0/>`_

Social Media
''''''''''''
Expand All @@ -98,7 +98,7 @@ Also be sure to advertise your new AppImage on social media, for example on Twit
AppImageHub
'''''''''''

You may want to add your AppImage to `AppImageHub <https://appimage.github.io/apps/>`_, a crowd-sourced directory of available, automatically tested AppImages with data that 3rd party app stores and software centers can use. Given an URL to an AppImage, it inspects the AppImage and puts it into a community-maintained catalog.
You may want to add your AppImage to `AppImageHub <https://appimage.github.io/apps/>`__, a crowd-sourced directory of available, automatically tested AppImages with data that 3rd party app stores and software centers can use. Given an URL to an AppImage, it inspects the AppImage and puts it into a community-maintained catalog.

App stores and software centers can consume the metadata collected by this project. See `AppImage ecosystem`_.

Expand Down
2 changes: 1 addition & 1 deletion source/packaging-guide/environment-variables.rst
Original file line number Diff line number Diff line change
Expand Up @@ -76,5 +76,5 @@ The type 2 AppImage runtime makes a few environment variables available for use

Scenarios where :code:`ARGV0` is really useful involve so-called multi-binary AppImages, where the filename
in :code:`ARGV0` defines which program is called inside the AppImage. This concept is also known from
single-binary tools like `BusyBox <https://en.wikipedia.org/wiki/BusyBox>`_, and can be implemented in a custom
single-binary tools like `BusyBox <https://en.wikipedia.org/wiki/BusyBox>`__, and can be implemented in a custom
:code:`AppRun` script (see :ref:`Architecture <ref-architecture>` for more information).
4 changes: 2 additions & 2 deletions source/packaging-guide/from-source/linuxdeploy-user-guide.rst
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ This page illustrates how linuxdeploy can be used.

linuxdeploy is capable of packaging dependencies of resources in an existing AppDir, or creating the AppDir from scratch, bundling resources into the right locations that the user passes to it.

linuxdeploy describes itself as an `"AppDir maintenance tool" <https://github.com/linuxdeploy/linuxdeploy/blob/master/README.md>`_. Its primary focus is on AppDirs, and it uses plugins to create output formats such as AppImages.
linuxdeploy describes itself as an `"AppDir maintenance tool" <https://github.com/linuxdeploy/linuxdeploy/blob/master/README.md>`__. Its primary focus is on AppDirs, and it uses plugins to create output formats such as AppImages.


.. contents:: Contents
Expand Down Expand Up @@ -49,7 +49,7 @@ linuxdeploy provides different flags to bundle different kinds of resources. Onl
Bundle a desktop file into the AppDir. These are required for desktop integration, and there must always be at least one of them in the AppDir. Please see :ref:`creating-desktop-file` for a guide how they can be created, and for best practices related to AppImages.

``--icon``/``-i``
Bundle icon file. Supported are all formats which the `Icon Theme Specification <https://standards.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html>`_ lists. linuxdeploy will automatically calculate the right output path, which depends on file format and resolution. You can specify multiple icons for multiple resolutions in the form of ``<resolution>/<app_name>.<ext>``.
Bundle icon file. Supported are all formats which the `Icon Theme Specification <https://standards.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html>`__ lists. linuxdeploy will automatically calculate the right output path, which depends on file format and resolution. You can specify multiple icons for multiple resolutions in the form of ``<resolution>/<app_name>.<ext>``.

.. |rpath-comment| replace:: Set up everything so that other libraries, executables etc. use this one instead of a system one.

Expand Down
Loading

0 comments on commit 4eb8baf

Please sign in to comment.