Skip to content

Cheat sheets

This project is just a collection of personnal cheat sheets, about various linux related topics.

Most of them are still Work In Progress.

All of them should be treated with caution.


Table of contents


How to use this project

  • You can browse the cheat sheets online on readthedocs.

  • You can also clone this project and look at the cheat sheets from your terminal:

    $ git clone https://gitlab.com/stephane.tzvetkov/cheatsheets.git
    $ cd cheatsheets/docs
    $ ls
    


How to contribute to this project

After editing some of the cheatsheets of this project and before issuing a pull-request, you might want to see how your contribution will render on readthedocs. In order to do so, simply perform the following steps:

  • Create a python virtual environment at the root of this project (optional) and install mkdocs (mandatory):

    $ cd /path/to/this/project
    $ python -m venv pyenv
    $ source ./pyenv/bin/activate
    (pyenv) $ python -m pip install --upgrade pip
    (pyenv) $ python -m pip install mkdocs
    

  • Install the requirements:

    (pyenv) $ python -m pip install -r docs/readthedocs-requirements.txt
    

  • Builds the docs and serve them on a local address:

    (pyenv) $ mkdocs serve -f .mkdocs.yml
      > ...
      > INFO    -  Serving on http://127.0.0.1:8000
      > ...
    

  • Now just open http://127.0.0.1:8000 in a web-browser and make sure the rendering of your modifications is ok.

That's it, you are ready to push.

If you want to learn more about readthedocs and mkdocs, you can refer to this cheatsheet.


TODO

Cf. https://www.tecmint.com/linux-package-management/

Recurrent checks

  • check that there is no text on the line above a line starting with !!!:
    • $ grep -A1 "^[[:alnum:]]" | grep -B1 "\!\!\!\s"
  • check that there is no TODOs left inside the cheatsheets:
    • $ grep -i "todo"
  • check that there is no broken links:
    • $ linkchecker http://127.0.0.1:8000
  • check that every main section and subsections have a separating line:
    • $ grep -i -B1 "^# " | grep -v "\-\-\-\-"
    • $ grep -i -B1 "^## " | grep -v "\-\-\-\-"
  • check the content of the notes' tabs (===): make sure they are separeted by an empty line:

    • $ grep -A1 -v "^$" | grep -B1 "===\s"
  • check the current number of cheatsheets:

    • $ find docs -type f | wc -l

Useful references