From e816b49c44f70ec2ca28cb5a2caefc7446a6c8e5 Mon Sep 17 00:00:00 2001 From: Olivier Lenoir Date: Wed, 13 Mar 2024 21:57:06 +0100 Subject: docs/reference: Document how to mip install packages from GitLab. Signed-off-by: Olivier Lenoir --- docs/reference/mpremote.rst | 7 +++++++ docs/reference/packages.rst | 17 ++++++++++++----- 2 files changed, 19 insertions(+), 5 deletions(-) (limited to 'docs/reference') diff --git a/docs/reference/mpremote.rst b/docs/reference/mpremote.rst index 08ef5d31ff..bf25e29d93 100644 --- a/docs/reference/mpremote.rst +++ b/docs/reference/mpremote.rst @@ -682,6 +682,13 @@ See :ref:`packages`. Install the package from the specified branch at org/repo on GitHub to the device. See :ref:`packages`. +.. code-block:: bash + + mpremote mip install gitlab:org/repo@branch + +Install the package from the specified branch at org/repo on GitLab to the +device. See :ref:`packages`. + .. code-block:: bash mpremote mip install --target /flash/third-party functools diff --git a/docs/reference/packages.rst b/docs/reference/packages.rst index c9deedea77..e47c226b24 100644 --- a/docs/reference/packages.rst +++ b/docs/reference/packages.rst @@ -7,7 +7,7 @@ Installing packages with ``mip`` -------------------------------- Network-capable boards include the ``mip`` module, which can install packages -from :term:`micropython-lib` and from third-party sites (including GitHub). +from :term:`micropython-lib` and from third-party sites (including GitHub, GitLab). ``mip`` ("mip installs packages") is similar in concept to Python's ``pip`` tool, however it does not use the PyPI index, rather it uses :term:`micropython-lib` @@ -38,24 +38,28 @@ install third-party libraries. The simplest way is to download a file directly:: When installing a file directly, the ``target`` argument is still supported to set the destination path, but ``mpy`` and ``version`` are ignored. -The URL can also start with ``github:`` as a simple way of pointing to content -hosted on GitHub:: +The URL can also start with ``github:`` or ``gitlab:`` as a simple way of pointing to content +hosted on GitHub or GitLab:: >>> mip.install("github:org/repo/path/foo.py") # Uses default branch >>> mip.install("github:org/repo/path/foo.py", version="branch-or-tag") # Optionally specify the branch or tag + >>> mip.install("gitlab:org/repo/path/foo.py") # Uses default branch + >>> mip.install("gitlab:org/repo/path/foo.py", version="branch-or-tag") # Optionally specify the branch or tag More sophisticated packages (i.e. with more than one file, or with dependencies) can be downloaded by specifying the path to their ``package.json``. >>> mip.install("http://example.com/x/package.json") >>> mip.install("github:org/user/path/package.json") + >>> mip.install("gitlab:org/user/path/package.json") If no json file is specified, then "package.json" is implicitly added:: >>> mip.install("http://example.com/x/") >>> mip.install("github:org/repo") # Uses default branch of that repo >>> mip.install("github:org/repo", version="branch-or-tag") - + >>> mip.install("gitlab:org/repo") # Uses default branch of that repo + >>> mip.install("gitlab:org/repo", version="branch-or-tag") Using ``mip`` on the Unix port ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -83,6 +87,8 @@ can be used from a host PC to install packages to a locally connected device $ mpremote mip install http://example.com/x/y/foo.py $ mpremote mip install github:org/repo $ mpremote mip install github:org/repo@branch-or-tag + $ mpremote mip install gitlab:org/repo + $ mpremote mip install gitlab:org/repo@branch-or-tag The ``--target=path``, ``--no-mpy``, and ``--index`` arguments can be set:: @@ -120,7 +126,8 @@ A typical ``package.json`` for an example ``mlx90640`` library looks like:: "deps": [ ["collections-defaultdict", "latest"], ["os-path", "latest"], - ["github:org/micropython-additions", "main"] + ["github:org/micropython-additions", "main"], + ["gitlab:org/micropython-otheradditions", "main"] ], "version": "0.2" } -- cgit v1.2.3