=========
Reference
=========

How To...
=========

Use packages
~~~~~~~~~~~~

Find a package
^^^^^^^^^^^^^^

In your browser, you can search Anaconda Repository for packages 
by package name. From the search box in the top navigation bar 
of any page, enter the package name. You can filter your searches 
to specify only conda or PyPI packages, and you can sort results 
by number of favorites or number of downloads by clicking the 
search results column heading.


Download and install a package from Anaconda Repository
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

To install a conda package, in your terminal window run::

    conda install -c username packagename

Conda expands "username" to a URL such as
``https://<your-anaconda-repo>/username`` 
based on the settings in the .condarc file. 


Download and install a PyPI package from Anaconda Repository
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

To install a PyPI package, in your terminal window run::

    pip install --index-url pypi.anaconda.org/USERNAME/simple packagename


Use the anaconda-client CLI
~~~~~~~~~~~~~~~~~~~~~~~~~~~


Install anaconda-client
^^^^^^^^^^^^^^^^^^^^^^^

The anaconda-client command line interface (CLI) is available via conda
or pip. See :ref:`installation and setup
instructions <repo-installing-anaconda-client>`.


Find my anaconda-client login credentials
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Your login credentials for anaconda-client are the same as those you used 
to create an account on Anaconda Repository. For help, in a browser 
window, navigate to your Anaconda Repository Sign In tab and click 
"forgot password."

Log into anaconda-client
^^^^^^^^^^^^^^^^^^^^^^^^

After you have downloaded and configured anaconda-client, open a
terminal window and run::

    anaconda login

See a list of anaconda-client commands
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

From a terminal window, run::

    anaconda --help

Find out more about an anaconda-client command
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

From a terminal window, run::

    anaconda COMMANDNAME -h

See a list of all available anaconda-client configuration files
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

From a terminal window, run::

    anaconda config --files

See a list of all of my anaconda-client configuration variables
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

From a terminal window, run::

    anaconda config --show

Find out more about the anaconda-client
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

If you have a question that you cannot answer using the help command or 
documentation, contact your site administrator who has access to 
enterprise priority support.

Build packages
~~~~~~~~~~~~~~

Build and upload a package
^^^^^^^^^^^^^^^^^^^^^^^^^^

For a quick run-through, try the Quickstart :ref:`build guide
section <repo-quickstart-build-upload>`.

Test a built package
^^^^^^^^^^^^^^^^^^^^

Specify the '--use-local' option. For example::

    conda create --use-local -n test PACKAGENAME

Upload a package to Anaconda Repository
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

In a terminal window, run::

    anaconda upload PACKAGENAME

Find help uploading packages
^^^^^^^^^^^^^^^^^^^^^^^^^^^^

For a complete list of upload options, including specifying a package's
channel, label, availability to other users, and metadata, in a terminal
window, run::

    anaconda upload -h


FAQ
===

General Questions
~~~~~~~~~~~~~~~~~

What is Anaconda Repository?
^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Anaconda Repository is private package management server software. Anaconda 
Repository makes it easy to find, access, store and share public and 
private notebooks, environments, and conda and PyPI packages, and 
to keep up with updates made to the packages and environments you need.

What kind of packages does Anaconda Repository support?
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Anaconda Repository supports any type of package. It is primarily used
for conda, PyPI and R packages, as well as notebooks and environments.

What is Continuum Analytics?
^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Continuum Analytics is a software development and consulting company of
passionate open source advocates based in Austin, Texas, USA. We are
committed to the open source community. We created the Anaconda Python
distribution and contribute to many other open source-based data
analytics tools. You can find out more about us
`here <http://continuum.io/our-story>`_.


How do I get started with Anaconda Repository?
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

If you have access to Anaconda Repository, you can search, 
download and install hundreds of "public" packages without
even having an account. 

If you wish to upload packages to Anaconda Repository, you 
will need to sign up for an Anaconda Repository
account. See our :doc:`using` section for more help or ask 
your administrator.


What is an organization account, and how is it different from an individual account?
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

An organization account allows multiple individual users to administer
packages and have more control of package access by other users. An
individual account is for use by one person.

Who can upload packages to an organization?
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Only users who are co-owners of the organization may upload packages to that 
organization. Administrators who are not co-owners cannot upload packages to 
the organization. Users who are members of groups with Read/Write access but 
who are not co-owners cannot upload packages to the organization.

Glossary
========

Anaconda
~~~~~~~~

An easy-to-install, free collection of Open Source packages, including
Python and the conda package manager. Over 
150 packages are installed with Anaconda. The Anaconda Repository
contains over 250 additional Open Source packages that can be installed
or updated after installing Anaconda with the
``conda install PACKAGENAME`` command.

Anaconda Repository
~~~~~~~~~~~~~~~~~~~

Anaconda Repository hosts hundreds of useful Python packages, notebooks and
environments for a wide variety of applications. You don't need to have
an Anaconda Repository account, or to be logged in, to search for 
packages, download and install them. 

Anaconda-Client CLI
~~~~~~~~~~~~~~~~~~~

The Anaconda-Client command line interface (CLI) allows you to log into
Anaconda Repository directly from your terminal window and manage your
account. It is not necessary for
downloading or installing packages from Anaconda Repository.

Labels
~~~~~~

The URLs on Anaconda Repository where conda looks for packages. Using the
Anaconda-Client CLI in a terminal window, package developers can 
create additional labels
such as development (labels/dev) test (labels/test) or other labels
which will be searched only if the user specifies the label.

``https://<your-anaconda-repo>/travis/labels/main`` - the label searched by
default

``https://<your-anaconda-repo>/travis`` - same as default label with "main"
implicit

``https://<your-anaconda-repo>/travis/labels/dev`` - contains the packages
in development

``https://<your-anaconda-repo>/travis/labels/test`` - contains packages ready to
test

``https://<your-anaconda-repo>/travis/labels/any-custom-label`` - any label you
wish to use.

Conda
~~~~~

The conda package manager and environment manager program that installs
and updates packages and their dependencies, and lets you easily switch
between environments on your local computer.

Conda-Build
~~~~~~~~~~~

The command line interface that lets you build packages for your local
operating system.

Conda package
~~~~~~~~~~~~~

A tarball (compressed file) containing system-level libraries, Python
modules, executable programs, or other components.

Miniconda
~~~~~~~~~

A minimal installer for conda. Like Anaconda, Miniconda is a software
package that includes the conda package manager and Python and its
dependencies, but does not include any other packages. Once conda is
installed by installing either Anaconda or Miniconda, other software
packages may be installed directly from the command line with 'conda
install'. See also Anaconda and conda.

Noarch package
~~~~~~~~~~~~~~

A conda package that contains nothing specific to any system
architecture, so it may be installed on any system. When conda does a
search for packages on any system in a channel, conda always checks both
the system-specific subdirectory, for example, ``linux-64`` *and* the
``noarch`` directory.

OnSite
~~~~~~

Anaconda Repository is powered by Anaconda Server by Continuum Analytics. Run
your own Anaconda server behind firewalls or in air-gapped environments.
Contact `sales@continuum.io <mailto:sales@continuum.io>`_ for more
information.

Organization
~~~~~~~~~~~~

An organization account is a type of account on Anaconda Repository that
allows multiple individual users to administer packages and control
package access to different user groups. It also includes a large amount
of storage space.

Repository
~~~~~~~~~~

A storage location from which software packages may be retrieved and
installed on a computer.

Source package
~~~~~~~~~~~~~~

"Source" packages are source code only, not yet built for any specific
platform, and might be compatible with all, some, or only one of the
platforms.

.. _repo-reference-token:

Token
~~~~~

A token (or authentication token) is the mechanism by which anonymous
users can download private packages without using an Anaconda Repository
account. It is an alpha-numeric code that is inserted into a URL that
allows access by anyone who has the URL. You can use anaconda-client to
generate new tokens to give other users specifically scoped access to
packages and collections.

User Namespace
~~~~~~~~~~~~~~

The part of Anaconda Repository where a user or organization may host
packages. For example, the *user namespace* ``https://<your-anaconda-repo>/travis``
contains packages that were uploaded and shared by the user named
Travis.
