Installing pmbootstrap: Difference between revisions
use syntaxhighlight tags |
Minor fixes, remove TODO (the MR is merged now) |
||
Line 7: | Line 7: | ||
==== Create a link ==== | ==== Create a link ==== | ||
If the directory <code>~/.local/bin</code> does not already exist, create it with | If the directory <code>~/.local/bin</code> does not already exist, create it with: | ||
<syntaxhighlight lang="shell-session"> | <syntaxhighlight lang="shell-session"> | ||
$ mkdir --parents ~/.local/bin | $ mkdir --parents ~/.local/bin | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Create a symbolic link in <code>~/.local/bin</code> named <code>pmbootstrap</code> | Create a symbolic link in <code>~/.local/bin</code> named <code>pmbootstrap</code>: | ||
<syntaxhighlight lang="shell-session"> | <syntaxhighlight lang="shell-session"> | ||
$ ln -s "$PWD/pmbootstrap/pmbootstrap.py" ~/.local/bin/pmbootstrap | $ ln -s "$PWD/pmbootstrap/pmbootstrap.py" ~/.local/bin/pmbootstrap | ||
Line 18: | Line 18: | ||
==== Test installation ==== | ==== Test installation ==== | ||
To test that pmbootstrap is installed correctly, open a new terminal and run | To test that pmbootstrap is installed correctly, open a new terminal and run: | ||
<syntaxhighlight lang="shell-session"> | <syntaxhighlight lang="shell-session"> | ||
$ pmbootstrap --version | $ pmbootstrap --version | ||
</syntaxhighlight> | </syntaxhighlight> | ||
If this returns something like <code>pmbootstrap: command not found</code> instead of a version number, ensure that the following lines are in <code>~/.profile</code> (zsh: <code>~/.zprofile</code>) | If this returns something like <code>pmbootstrap: command not found</code> instead of a version number, ensure that the following lines are in <code>~/.profile</code> (zsh: <code>~/.zprofile</code>): | ||
<syntaxhighlight lang="shell"> | <syntaxhighlight lang="shell"> | ||
# set PATH so it includes user's private bin if it exists | # set PATH so it includes user's private bin if it exists | ||
Line 31: | Line 30: | ||
fi | fi | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Then open a new terminal and try again. | |||
== Tab | == Tab completion == | ||
{{ | {{note|Make sure you have created and tested the symlink as described above!}} | ||
[https://en.wikipedia.org/wiki/Command-line_completion Tab completion] is an optional feature that saves you time by automatically filling in the rest of a command when you press the tab key. You can also see a list of possible commands by double pressing the tab key. | [https://en.wikipedia.org/wiki/Command-line_completion Tab completion] is an optional feature that saves you time by automatically filling in the rest of a command when you press the tab key. You can also see a list of possible commands by double pressing the tab key. | ||
Install [https://argcomplete.readthedocs.io/en/latest/ argcomplete] with | Install [https://argcomplete.readthedocs.io/en/latest/ argcomplete] with: | ||
<syntaxhighlight lang="shell-session"> | <syntaxhighlight lang="shell-session"> | ||
$ pip3 install --user argcomplete | $ pip3 install --user argcomplete | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Next, do one of the following depending on the shell you use | Next, do one of the following depending on the shell you use. | ||
==== Bash ==== | ==== Bash ==== | ||
Add the following line to <code>~/.bashrc</code>: | Add the following line to <code>~/.bashrc</code>: | ||
<syntaxhighlight lang="shell"> | <syntaxhighlight lang="shell"> |
Revision as of 21:37, 27 August 2018
Installing Manually
Download pmbootstrap
$ git clone https://gitlab.com/postmarketOS/pmbootstrap.git
Create a link
If the directory ~/.local/bin
does not already exist, create it with:
$ mkdir --parents ~/.local/bin
Create a symbolic link in ~/.local/bin
named pmbootstrap
:
$ ln -s "$PWD/pmbootstrap/pmbootstrap.py" ~/.local/bin/pmbootstrap
Test installation
To test that pmbootstrap is installed correctly, open a new terminal and run:
$ pmbootstrap --version
If this returns something like pmbootstrap: command not found
instead of a version number, ensure that the following lines are in ~/.profile
(zsh: ~/.zprofile
):
# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/.local/bin" ] ; then
PATH="$HOME/.local/bin:$PATH"
fi
Then open a new terminal and try again.
Tab completion
Make sure you have created and tested the symlink as described above! |
Tab completion is an optional feature that saves you time by automatically filling in the rest of a command when you press the tab key. You can also see a list of possible commands by double pressing the tab key.
Install argcomplete with:
$ pip3 install --user argcomplete
Next, do one of the following depending on the shell you use.
Bash
Add the following line to ~/.bashrc
:
eval "$(register-python-argcomplete pmbootstrap)"
Then reload your configuration by opening a new terminal or by running source ~/.bashrc
.
Zsh
Add the following lines to ~/.zshrc
:
autoload bashcompinit
bashcompinit
eval "$(register-python-argcomplete pmbootstrap)"
Then reload your configuration by opening a new terminal or by running source ~/.zshrc
.