<commit_before>Przygotowanie systemu Linux
###########################

Jeżeli nie masz zainstalowanego systemu Linux, możesz wykorzystać wersję
:ref:`Linux Live <linux-live>`, która po nagraniu na pendrajwa pozwoli uruchomić komputer.
Jeżeli masz Linuksa lub planujesz go zainstalować na dysku, czytaj dalej.

W systemach linuksowych Python 2.7.x zainstalowany jest domyślnie,
wersję 3 również. Potrzebne narzędzia instalujemy przy użyciu systemowego
menedżera pakietów, natomiast biblioteki wykorzystywane w materiałach za pomocą
instalatora pakietów Pythona ``pip``.

Narzędzia:

* pip – instalator pakietów Pythona
* virtualenv – menedżer wirtualnych środowisk
* git – narzędzie umożliwiające korzystanie z zasobów serwisu `Github <https://github.com/>`
* ipython – rozszerzona interaktywna konsola Pythona

.. contents:: Spis treści
    :backlinks: none

.. note::

    * Nazwy pakietów w różnych dystrybucjach mogą się nieco różnić od podanych.
    * *Pygame* to jedyna biblioteka, którą trzeba instalować za pomocą systemowego
      menedżera pakietów.
    * Systemy Debian i Arch Linux w domyślnej konfiguracji nie wykorzytują
      mechanizmu podnoszenia uprawnień ``sudo``, dlatego polecenia instalacji
      należy wydawać z konta użytkownika root (w kodzie oznaczane znakami ``~#``).

Debian, Ubuntu i pochodne
-------------------------

W systemach opartych na Debianie (m. in. wszystkie wersje Ubuntu, LinuxMint itd.)
używamy menedżera ``apt-get`` i w terminalu wydajemy następujące polecenia:

.. code-block:: bash

    ~$ sudo apt-get update
    ~$ sudo apt-get install python-pip python-virtualenv git ipython python-pygame sqlite3
    ~$ sudo pip install --upgrade install
    ~$ sudo pip install Flask Django peewee sqlalchemy flask-sqlalchemy

Jeśli ``apt-get`` zgłosi problem z dostępnością pakietu, w systemach Ubuntu i pochodnych
należy spróbować włączyć dodatkowe źródła oprogramowania:

.. figure:: img/universe.png

Arch Linux i pochodne
---------------------

W systemach opartych na Arch Linuksie (Bridge Linux, Manjaro)
wykorzystują menedżer ``pacman``. Odpowiednie polecenia mają postać:

.. code-block:: bash

    ~# pacman -Syyu
    ~# pacman -S python2-pip python2-virtualenv git ipython2 python2-pygame sqlite
    ~# pip2 install Flask Django peewee sqlalchemy flask-sqlalchemy

W innych systemach linuksowych należy korzystać z dedykowanych menedżerów
lub wspomnianego instalatora Pythona (``pip``).<commit_msg>Poprawka polecenia aktualizacji pip i virtualenv<commit_after>Przygotowanie systemu Linux
###########################

Jeżeli nie masz zainstalowanego systemu Linux, możesz wykorzystać wersję
:ref:`Linux Live <linux-live>`, która po nagraniu na pendrajwa pozwoli uruchomić komputer.
Jeżeli masz Linuksa lub planujesz go zainstalować na dysku, czytaj dalej.

W systemach linuksowych Python 2.7.x zainstalowany jest domyślnie,
wersję 3 również. Potrzebne narzędzia instalujemy przy użyciu systemowego
menedżera pakietów, natomiast biblioteki wykorzystywane w materiałach za pomocą
instalatora pakietów Pythona ``pip``.

Narzędzia:

* pip – instalator pakietów Pythona
* virtualenv – menedżer wirtualnych środowisk
* git – narzędzie umożliwiające korzystanie z zasobów serwisu `Github <https://github.com/>`
* ipython – rozszerzona interaktywna konsola Pythona

.. contents:: Spis treści
    :backlinks: none

.. note::

    * Nazwy pakietów w różnych dystrybucjach mogą się nieco różnić od podanych.
    * *Pygame* to jedyna biblioteka, którą trzeba instalować za pomocą systemowego
      menedżera pakietów.
    * Systemy Debian i Arch Linux w domyślnej konfiguracji nie wykorzytują
      mechanizmu podnoszenia uprawnień ``sudo``, dlatego polecenia instalacji
      należy wydawać z konta użytkownika root (w kodzie oznaczane znakami ``~#``).

Debian, Ubuntu i pochodne
-------------------------

W systemach opartych na Debianie (m. in. wszystkie wersje Ubuntu, LinuxMint itd.)
używamy menedżera ``apt-get`` i w terminalu wydajemy następujące polecenia:

.. code-block:: bash

    ~$ sudo apt-get update
    ~$ sudo apt-get install python-pip python-virtualenv git ipython python-pygame sqlite3
    ~$ sudo pip install --upgrade pip
    ~$ sudo pip install --upgrade virtualenv
    ~$ sudo pip install Flask Django peewee sqlalchemy flask-sqlalchemy

Jeśli ``apt-get`` zgłosi problem z dostępnością pakietu, w systemach Ubuntu i pochodnych
należy spróbować włączyć dodatkowe źródła oprogramowania:

.. figure:: img/universe.png

Arch Linux i pochodne
---------------------

W systemach opartych na Arch Linuksie (Bridge Linux, Manjaro)
wykorzystują menedżer ``pacman``. Odpowiednie polecenia mają postać:

.. code-block:: bash

    ~# pacman -Syyu
    ~# pacman -S python2-pip python2-virtualenv git ipython2 python2-pygame sqlite
    ~# pip2 install Flask Django peewee sqlalchemy flask-sqlalchemy

W innych systemach linuksowych należy korzystać z dedykowanych menedżerów
lub wspomnianego instalatora Pythona (``pip``).
{'fraction_non_alphanumeric': 0.09259259259259259, 'fraction_numerical': 0.0036231884057971015, 'mean_word_length': 4.197698744769874, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 7, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '762858', 'n_tokens_mistral': 1917, 'n_tokens_neox': 1903, 'n_words': 553}