Skip to content

Commit

Permalink
Added plugin description, tweaked disk_config to the latest changes f…
Browse files Browse the repository at this point in the history
…rom #2221
  • Loading branch information
Torxed committed Nov 21, 2023
1 parent 836dfda commit 6fec39a
Show file tree
Hide file tree
Showing 4 changed files with 19 additions and 75 deletions.
9 changes: 9 additions & 0 deletions docs/archinstall/plugins.rst
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,15 @@ If the function exists, :code:`.strap()` will call the plugin's function and rep

The best way to document these calls is currently undecided, as it's hard to document this behavior dynamically.

Writing your own?
-----------------

The simplest way currently is to look at a reference implementation or the community. Two of these are:

* `torxed/archinstall-aur <https://github.com/torxed/archinstall-aur>`_
* `phisch/archinstall-aur <https://github.com/phisch/archinstall-aur>`_

And search for `plugin.on_ <https://github.com/search?q=repo%3Aarchlinux%2Farchinstall+%22plugin.on_%22&type=code>`_ in the code base to find what ``archinstall`` will look for. PR's are welcome to widen the support for this.

.. _plugin discovery: https://packaging.python.org/en/latest/specifications/entry-points/
.. _entry points: https://docs.python.org/3/library/importlib.metadata.html#entry-points
3 changes: 2 additions & 1 deletion docs/cli_parameters/config/disk_config.rst
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@ There are only three modes in the ``disk_config`` option. They are described in
.. code-block:: json
{
"disk_config": null
"config_type": "pre_mounted_config",
"mountpoint": "/mnt/archinstall"
}
This mode will not perform any partitioning what so ever.
Expand Down
9 changes: 7 additions & 2 deletions docs/help/known_issues.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ Known Issues

| Some issues are out of the `archinstall`_ projects scope, and the ones we know of are listed below.
.. _waiting for time sync:
Waiting for time sync `#2144`_
------------------------------

Expand All @@ -27,7 +28,7 @@ Missing Nvidia Proprietary Driver `#2002`_
A common workaround is to install the package `linux-headers`_ and `nvidia-dkms`_

ARM, 32bit and other CPU types error out `#1686`_, `#2185`_
-------------------------------------------------
-----------------------------------------------------------

| This is a bit of a catch-all known issue.
| Officially `x86_64`_ is only supported by Arch Linux.
Expand All @@ -54,6 +55,10 @@ Keyring is out of date `#2213`_

The issue can happen on new ISO's too even as little as a few days after release, as some keys might expire right after the keyring is *"burnt in"* to the ISO.

.. note::

Another common issue relating to the network not being configured, is that time might not be set correctly - resulting in the keyring not being able to update. See :ref:`waiting for time sync`.

AUR packages
------------

Expand All @@ -64,7 +69,7 @@ AUR packages
.. note::

But in spirit of giving the community options, you can run ``archinstall --plugin <url>`` and source an AUR plugin.
But in spirit of giving the community options, ``archinstall`` supports :ref:`archinstall.Plugins`, which means you can run ``archinstall --plugin <url>`` and source an AUR plugin.

`torxed/archinstall-aur <https://github.com/torxed/archinstall-aur>`_ is a reference implementation for plugins:

Expand Down
73 changes: 1 addition & 72 deletions docs/installing/guided.rst
Original file line number Diff line number Diff line change
Expand Up @@ -253,78 +253,7 @@ Options for ``--creds``
+----------------------+--------------------------------------------------------+--------------------------------------------------------------------------------------+-----------------------------------------------+

.. note::
[1] ``!users`` is optional only if ``!root-password`` was set. ``!users`` will be enforced otherwise and the minimum amount of users with sudo privileges required will be set to 1.

Options for ``--disk_layouts``
------------------------------

.. note::
| The layout of ``--disk_layouts`` is a bit complicated.
| It's highly recommended that you generate it using ``--dry-run`` which will simulate an installation, without performing any damaging actions on your machine. *(no formatting is done)*
.. code-block:: json
{
"/dev/loop0": {
"partitions": [
{
"boot": true,
"encrypted": false,
"filesystem": {
"format": "fat32"
},
"wipe": true,
"mountpoint": "/boot",
"size": "513MB",
"start": "5MB",
"type": "primary"
},
{
"btrfs": {
"subvolumes": {
"@.snapshots": "/.snapshots",
"@home": "/home",
"@log": "/var/log",
"@pkgs": "/var/cache/pacman/pkg"
}
},
"encrypted": true,
"filesystem": {
"format": "btrfs"
},
"wipe": true,
"mountpoint": "/",
"size": "100%",
"start": "518MB",
"type": "primary"
}
],
"wipe": true
}
}
| The overall structure is that of ``{ "blockdevice-path" : ...}`` followed by options for that blockdevice.
| Each partition has it's own settings, and the formatting is executed in order *(top to bottom in the above example)*.
| Mountpoints is later mounted in order of path traversal, ``/`` before ``/home`` etc.
+----------------------+-----------------------------------------------------+--------------------------------------------------------------------------------------+-----------------------------------------------+
| Key | Values | Description | Required |
| | | | |
+======================+=====================================================+======================================================================================+===============================================+
| filesystem | { "format": "ext4 / btrfs / fat32 etc." } | Filesystem for root and other partitions | Yes |
+----------------------+-----------------------------------------------------+--------------------------------------------------------------------------------------+-----------------------------------------------+
| boot | <bool> | Marks the partition as bootable | No |
+----------------------+-----------------------------------------------------+--------------------------------------------------------------------------------------+-----------------------------------------------+
| encrypted | <bool> | Mark the partition for encryption | No |
+----------------------+-----------------------------------------------------+--------------------------------------------------------------------------------------+-----------------------------------------------+
| mountpoint | /path | Relative to the inside of the installation, where should the partition be mounted | Yes |
+----------------------+-----------------------------------------------------+--------------------------------------------------------------------------------------+-----------------------------------------------+
| start | <size><B, MiB, GiB, %, etc> | The start position of the partition | Yes |
+----------------------+-----------------------------------------------------+--------------------------------------------------------------------------------------+-----------------------------------------------+
| type | primary | Only used if MBR and BIOS is used. Marks what kind of partition it is. | No |
+----------------------+-----------------------------------------------------+--------------------------------------------------------------------------------------+-----------------------------------------------+
| btrfs | { "subvolumes": {"subvolume": "mountpoint"}} | Support for btrfs subvolumes for a given partition | No |
+----------------------+-----------------------------------------------------+--------------------------------------------------------------------------------------+-----------------------------------------------+
``!users`` is optional only if ``!root-password`` was set. ``!users`` will be enforced otherwise and the minimum amount of users with sudo privileges required will be set to 1.


.. _scripts: https://github.com/archlinux/archinstall/tree/master/archinstall/scripts

0 comments on commit 6fec39a

Please sign in to comment.