Skip to main content
Background Image
  1. Teches/

How to Install Python Packages with `pip` & `pipx`

·893 words·5 mins· ·
Wildan
Author
Wildan
An Ordinary Human Being
Table of Contents

Beberapa aplikasi Python1 sebetulnya dapat langsung di-install untuk kemudian digunakan.2 Aplikasi/paket-paket ini dapat dilihat di PyPi (The Python Package Index):

PyPi: https://pypi.org/

Notes:
Python adalah ‘bahasa pemrograman tingkat tinggi’ yang dikembangkan oleh Guido van Rossum pada akhir tahun 1980-an. Disebut ‘bahasa pemrograman tingkat tinggi’ karena syntax Python lebih dekat ke bahasa manusia alih-alih ke bahasa mesin. Nama Python sendiri diambil dari serial komedi asal British bernama “Monty Python’s Flying Circus”.

pip
#

Repository official pip dapat ditemukan di Github:

Berikut langkah-langkah penggunaanya:

1. Install python
#

Tentu saja, karena aplikasi-aplikasi di PyPi adalah aplikasi Python, maka kita perlu memasang Python terlebih dahulu.

Notes:
Perlu diketahui, Python punya 2 versi:

  • Python versi 2 (sudah tidak dilanjut lagi.)
  • Python versi 3

Seperti terlihat, Python versi 2 sudah tidak dilanjut lagi perkembangannya, sehingga banyak aplikasi modern dikembangkan dengan yang versi 3. Jadi, pastikan ketika kita ingin meng-install Python, kita memasang versi yang sesuai dengan kebutuhan atau spesifikasi software yang ingin dijalanan…

Di sini, saya akan memasang Python versi 3.

DistroCommand
Debian/Ubuntusudo apt install python3
Arch Linuxsudo pacman -Sy python
Opensusesudo zypper install python3
Fedorasudo dnf install pyton3

Untuk memastikan Python3 sudah terpasang, gunakan perintah:

python --version

NixOS:
Masukkan baris berikut di file konfigurasi (/etc/nixos/configuration.nix):

  environment.systemPackages = [
    pkgs.python3
  ];

Atau jika menggunakan nix-shell:

nix-shell -p python3

2. Create virtualenv
#

Selanjutnya, kita perlu membuat virtual environment dengan perintah:

python -m venv {nama-folder}

Bagian {nama-folder} bisa diganti sebebas-bebasnya karena tidak akan berpengaruh ke software-nya. Akan tetapi, akan lebih baik kalau namanya disesuaikan dengan nama software/package yang akan di-install.

3. Activate venv
#

Berikutnya, kita akan mengaktifkan virtual environment yang sudah kita buat dengan perintah:

source {nama-folder}/bin/activate

4. Use pip
#

Kita kemudian dapat menggunakan pip untuk meng-install suatu package atau software.

./{nama-folder}/bin/pip install {nama-package}

{nama-pakcakge} diganti dengan nama paket yang hendak dipasang.

5. Run The Package
#

Selesai! Kita sekarang dapat menjalankan aplikasinya dengan perintah:

./{nama-folder}/bin/{nama-package}

Notes: Cara tersebut dapat terus dilakukan untuk dikemudian hari, bahkan tanpa python sekalipun.

pipx
#

pipx mirip dengan pip.

Perbedaan paling utama hanya di packages yang dapat di-install oleh masing-masing tool tersebut. Jika pip dapat digunakan untuk meng-install aplikasi dan library, pipx hanya ditujukan untuk meng-install aplikasi Python saja, jadi tidak bisa digunakan untuk meng-install library.3 Jadi, kalau saya boleh simpulkan sendiri, pipx lebih mirip seperti package manager yang ada di linux, misalnya seperti pacman di Archlinux, apt di Debian/Ubuntu, Zypper di Opensuse, dan lain sebagainya.

Meskipun demikian, keduanya sama-sama berjalan dengan menggunakan konsep virtual environment, sehingga aplikasi ataupun library yang ter-install tidak akan mempengaruhi system.

Berikut adalah perbandingan antara pip & pipx yang lebih spesifik:4

Aspectpippipx
Primary purposeLibrary and package managementApplication installation and execution
Installation scopeProject-specific or globalIsolated applications with global access
Dependency managementManual virtual environment handlingAutomatic isolation per application
Target use caseDevelopment dependencies and librariesCommand-line tools and standalone apps
Environment handlingRequires manual venv managementCreates isolated environments automatically
Package typesAny Python package or libraryApplications with console scripts
Upgrade strategyManual dependency resolutionPer-application upgrade isolation
Configuration complexityFlexible but requires setupMinimal configuration needed
Development workflowIntegrates with requirements.txtDesigned for end-user tool installation
Conflict resolutionUser manages conflicts manuallyPrevents conflicts through isolation
System integrationInstalls to active environmentCreates system-wide accessible commands
Temporary executionRequires installation firstSupports run-once execution with --run
Maintenance overheadRequires environment managementSelf-contained application management

Repository resmi pipx juga dapat ditemui di Github:

Website dokumentasi pipx:

pipx: https://pipx.pypa.io/stable/

1. Install pipx
#

Kita install pipx terlebih dahulu, langsung dari repo masing-masing Linux:

DistroCommand
Debian/Ubuntusudo apt install pipx
Arch Linuxsudo pacman -Sy python-pipx
Opensusesudo zypper install pipx
Fedorasudo dnf install pipx

Untuk memastikan pipx sudah terpasang, gunakan perintah:

pipx --version

NixOS:
Masukkan baris berikut di file konfigurasi (/etc/nixos/configuration.nix):

  environment.systemPackages = [
    pkgs.pipx
  ];

Atau jika menggunakan nix-shell:

nix-shell -p pipx

2. Use pipx
#

Setelah memasang pipx, sekarang kita dapat menggunakannya untuk meng-install aplikasi Python dengan perintah:

pipx install {nama-aplikasi}

Ganti {nama-aplikasi} dengan nama aplikasi yang ingin kita install.

3. Uninstall with pipx
#

Kita juga dapat meng-uninstall atau menghapus aplikasi yang sudah di-install dengan perintah:

pipx uninstall {nama-aplikasi}

4. Listing pipx Apps
#

Jika kita ingin melihat aplikasi apa saja yang sudah pernah di-install dengan pipx:

pipx list

5. Help
#

Kita juga dapat melihat opsi-opsi lain apa saja yang dapat kita manfaatkan ketika menggunakan pipx:

pipx --help

Beberapa artikel saya yang lain juga sebetulnya ada yang pernah memanfaatkan pip dan pipx untuk meng-install paket Python:

  1. Cloudinary
Automatic Image & Video File(s) Hosting in Cloudinary through Python
  1. File Server (Updog & Copyparty)
A Glance at File/Web Server Options
··2102 words·10 mins
  1. BeatPrints
BeatPrints: Your Favorite Spotify Poster

Notes:
#

1. Getting out of venv
#

Untuk keluar dari sesi virtual environment yang sudah diaktifkan ketika meng-install packages via pip sebelumnya, kita dapat mengetikkan perintah exit atau shortcut Ctrl+d di terminal.

2. Delete venv
#

Jika kita merasa tidak lagi membutuhkannya, kita dapat menghapus folder paket tersebut:

rm -rf {nama-folder}

Related

A Glance at File/Web Server Options
··2102 words·10 mins
A curated file server list that will enhance your productivity, especially as a hobbyist.
Automatic Image & Video File(s) Hosting in Cloudinary through Python
A brief tutorial on how to upload file(s) or video(s) to Cloudinary through Python script.
BeatPrints: Your Favorite Spotify Poster
A quick and stylish posters for your favorite tracks!🎷☕️