Open source sering terdengar seperti sesuatu yang "besar": ribuan baris kode, maintainer senior, dan pull request kompleks. Padahal, kontribusi open source bisa dimulai dari bug kecil yang benar-benar kita alami sendiri.
Artikel ini adalah ceritaku saat menemukan bug sederhana di sebuah repository GitHub — dan bagaimana bug itu membawaku sampai ke issue, pull request, dan diskusi langsung dengan maintainer.
Latar Belakang
Aku adalah mahasiswa Teknik Informatika yang sehari-hari menggunakan Linux, khususnya Garuda Linux (Arch-based). Saat mencoba sebuah tools penetration testing bernama AutoPentestX, aku menjalankan installer seperti biasa:
./install.shAwalnya terlihat normal — OS terdeteksi — tapi instalasi langsung gagal dengan error:
sudo: apt-get: command not foundDi titik ini aku sadar: installer-nya mengasumsikan semua Linux = Debian-based.
Padahal:
- Garuda Linux
- Arch Linux
- Manjaro
menggunakan pacman, bukan apt-get.
Bug yang Terlihat Sepele, Tapi Penting
Masalahnya bukan di tool pentesting-nya, tapi di installer script (install.sh) yang:
- Hardcode
apt-get - Tidak melakukan deteksi package manager secara dinamis
Akibatnya:
- Tool tidak bisa diinstal di Arch-based distro
- User Arch langsung mentok di langkah pertama
Buat user Linux, ini deal breaker.
Langkah Pertama: Membuat Issue
Alih-alih langsung fork dan mengubah kode, aku mulai dari langkah yang benar: membuat issue di repository utama.
Di issue tersebut aku jelaskan:
- Environment (Garuda Linux)
- Error yang muncul
- Expected behavior
- Kenapa ini penting untuk Arch-based users
Dan aku tutup dengan kalimat sederhana tapi penting:
I am willing to submit a Pull Request to fix this issue.
Ini sinyal ke maintainer bahwa:
- Masalahnya jelas
- Solusi memungkinkan
- Ada yang siap mengerjakan
Dari Issue ke Pull Request
Setelah issue dikonfirmasi, aku:
- Fork repository
- Membuat perbaikan di
install.sh - Menambahkan:
- Deteksi package manager (
aptvspacman) - Support resmi untuk Arch / Manjaro / Garuda
4. Test langsung di Garuda Linux
5. Push ke fork milikku
6. Membuat Pull Request ke repository utama
PR ini fokus pada satu hal:
Membuat installer bekerja lintas distro dengan benar.
Review & Diskusi (Bagian Paling Berharga)
Pull Request-ku direview, termasuk oleh GitHub Copilot AI reviewer.
Ada dua poin menarik:
- Komentar di script masih berbahasa Indonesia → aku perbaiki ke bahasa Inggris
- Perubahan behavior installer (non-interactive) → aku jelaskan alasannya secara terbuka
Alih-alih defensif, aku memilih menjelaskan dengan tenang dan terbuka:
Jika behavior lama ingin dipertahankan, aku siap menyesuaikan.
Ini penting:
- Review bukan serangan
- Diskusi ≠ penolakan
- Sikap kita menentukan apakah PR diterima atau tidak
Hasil Akhir
✔ Bug teridentifikasi ✔ Issue dibuat dengan benar ✔ Pull Request diajukan ✔ Diskusi sehat dengan reviewer ✔ Dukungan Arch-based distro ditambahkan
Pull Request ini juga secara otomatis menutup issue terkait.
Pelajaran Penting yang Aku Dapat
Beberapa hal non-teknis yang justru paling berharga:
- ❌ Tidak harus jago dulu untuk kontribusi open source
- ✅ Bug kecil tetap kontribusi valid
- ✅ Maintainer menghargai issue yang jelas
- ✅ PR yang fokus lebih mudah diterima
- ✅ Sikap saat review sama pentingnya dengan kode
Kenapa Ini Penting untuk Pemula?
Banyak pemula berpikir:
"Aku belum pantas kontribusi open source."
Padahal:
- Kamu pakai tools → kamu menemukan bug → itu kontribusi
- Tidak semua PR harus ribuan baris
- Open source hidup dari perbaikan kecil yang konsisten
Kontribusi open source tidak selalu dimulai dari ide besar. Kadang, ia dimulai dari satu error sederhana di terminal.
Kalau kamu:
- Pengguna Linux
- Mahasiswa
- Atau developer pemula
dan menemukan sesuatu yang "aneh" di sebuah project — itu bisa jadi kontribusi pertamamu.
GitHub PR: https://github.com/Gowtham-Darkseid/AutoPentestX/pull/5 GitHub Profile: https://github.com/Bangkah Ditulis dari pengalaman nyata sebagai pengguna & kontributor