Tips Install Ubuntu 20.04 Untuk Programmer

Halo semua, post kali ini aku mau share personal note waktu install ubuntu 20.04.

Sebelumnya aku personal pakai Mac untuk development, dan kebetulan ini ganti Windows laptop, karena alasan kerjaan aku decide untuk dual boot laptop aku dengan ubuntu untuk development dan windowsnya aku pake untuk entertainment aja.

Oke ada beberapa hal yang akan aku share disini:

  1. Install ubuntu & beberapa recommended apps yang memudahkan.
  2. Utilities note, problem dengan driver yang ga match waktu fresh install.

Langsung aja ya bahas yang pertama

1. Install Ubuntu 20.04 Khusus Untuk Programmer

Bitlocker

Untuk install ubuntu sendiri tidak ada masalah. Hanya ada satu saja yang perlu diperhatikan ketika install ubuntu dengan dual boot pada laptop yang menggunakan bitlocker encryption di hard drive kalian.

Waktu aku install ada semacam error atau warning bahwa kalau ada bitlocker maka ubuntu tidak akan bisa akses file windows karena terenkripsi, kalau cari-cari info di google salah satu solusinya adalah turn off bitlocker. Namun setelah aku dalami sih lebih baik janganĀ turn off bitlocker karena secara security jadi kurang baik.

Solusinya tetap aja dinyalakan bitlockernya, secara file nanti pakai google drive saja sharingnya.

XAMPP

Untuk install XAMPP juga cukup straightforward, tapi ada satu hal yang harusĀ  diperhatikan yaitu adalah STRICT_MODE (Referensi disini) ada beberapa pros & cons untuk strict mode ini, kalau aku memang lebih prefer strict mode dinyalakan karena itu akan membantu melakukan beberapa pengecekan-pengecekan pada program yang nanti kita develop.

Composer (Laravel)

Ketika install composer disini aku nggak mengalami masalah. Tetapi waktu install salah satu project error karena missing php extension. Solusinya ya tinggal install aja php extensionnya.

Di kasusku yang missing adalah php-mbstring & php-xml. Commandnya dibawah ini:

sudo apt-get install php-mbstring
sudo apt-get install php-xml

Setelah install ada problem kedua yang aku hadapi, jadi setelah run composer dump-autoload -o ada warning yang akhirnya skip untuk autoload vendornya. Warningnya semacam “class doesn’t comply psr-4 standard“. Kalau ada error ini, problemnya adalah kalau sebelumnya atau partner kalian pakai OS yang case insensitive maka error ini akan wajar karena linux atau ubuntu adalah case sensitive.

Solusinya simple kamu tinggal baca warningnya dan cari file yang disebut, terus benerin aja tulisannya dan harus sesuai huruf besar / kecilnya.

Artisan

Setelah berkutat dengan composer, sekarang masalah terjadi di artisan command. Waktu aku jalankan artisan migrate, ada error could not find driver. Hal ini disebabkan karena php missing extention pdo_mysql.

Solusinya ya perlu install pdo_mysql commandnya di bawah ini:

# Install mysql plugin
sudo apt-get install php-mysql

# Open pdo_mysql extension
sudo nano /opt/lampp/etc/php.ini

# Search for ;extension=php_pdo_mysql.dll
# Then delete the ‘;’ to open the extension
# After that restart the service

Recommended Apps

Sejauh ini untuk developer aku cuman pakai beberapa apps tambahan ini:

  1. Visual code. Sudah tau lah ya fungsinya ini untuk apa.
  2. Notion. Untuk personal note, aku rasa notion yang paling oke untuk saat ini ketimbang evernote & note2 lain.
  3. Chrome. Yes, saya pecinta chrome
  4. Trello. Sayang ini nggak ada native appsnya, jadi aku pake web app versionnya.
  5. Spotify. App wajib buat temenin pas ngoding

2. Utilities Note Driver & Kernel Ubuntu

Oke sekarang aku bahas beberapa utilities note, hal-hal yang personally menurutku kurang menyenangkan. Bukan berarti ubuntu jelek ya, tapi ini penilaian pribadi ku aja.

Jadi singkat cerita aku gatau kenapa alasannya, ubuntu yang LTS terbaru adalah versi 20.04 dengan default kernel 5.4. Versi ini release datenya kalau aku google yaitu April 2020. But since then, ternyata ada banyak banget update kernel dimana sekarang per Januari 2021 udah 5.10

Buat kalian yang nggak ngerti apa itu kernel dan fungsinya cek disini. Salah satu komponen di dalam kernel ada device drivers, jadi fungsinya adalah komunikasi dengan hardware.

Nah, jadi masalah yang awal aku alami adalah beberapa fungsi dari laptopku ga jalan karena drivernya nggak match. Salah satunya adalah fungsi change brightness dan it’s so annoying buat aku.

Trus solusinya gimana? Ya di update aja kernelnya. Buat aku pribadi karena baru pertama kali pake ubuntu, hal ini sangat-sangat nggak banget buat aku, karena banyak hal harus dilakukan via terminal. Untungnya beberapa community page yang aku temukan, solusinya cukup oke dan langsung bisa jalan.

Jadi stepsnya yang harus dilakukan adalah:

  1. Linux kernel sendiri sebetulnya banyak, tapi yang official di pakai ubuntu masih 20.04 dan setelah aku google, yang next akan dipakai secara resmi masih di kernel 5.8 so aku download yang 5.8. Cara downloadnya bisa ngikutin tutorial disini.
  2. Setelah aku update, ternyata ada error yang intinya kernelnya unsigned. Jadi di step 1 udah aku jelasin kalo banyak kernel yang dipublished tapi yang resmi itu belom ada. Kalau kernel yang nggak resmi, secara default sistem ubuntu akan error dan meminta kamu untuk meresmikan kernel yang mau dipake. Caranya gimana? Ikuti aja tutorial di page ini

Oke gengs, itulah sekilas pengalaman aku tentang pakai ubuntu dan sekarang ubuntu aku udah jalan oke banget.

As conclusion here:

  1. Ubuntu emang cocok buat developer. Menurutku pribadi kalo kalian pake ubuntu, dengan segala limitasinya akan memaksa kalian untuk lebih strict codingnya which is pasti better buat kalian developer.
  2. Lebih memahami cara kerja server, since banyak server yang sekarang base nya linux jadi pasti lebih paham how to handle linux.

 

Leave a Reply