Sejak memasang "dark" theme, saya cenderung menjadi malas menulis. Untuk sementara, dark theme saya disable dulu yaa. Terima kasih (^_^) (bandithijo, 2024/09/15) ●
Post ini Belum Saya Perbaharui
STEP 7 : Install GNOME and Complete Installation
7.1 Check Internet Connection
Sebelum memasang paket GNOME desktop, pastikan dulu kalian telah terhubung dengan Internet.
$ ping google.com
Apabila keluar hasil seperti di bawah.
ping: google.com: Name or service not known
Menandakan bahwa kita belum terhubung ke Internet. Lakukan perintah di bawah untuk menjalankan dhcpcd
.
$ sudo dhcpcd
Atau kalian dapat kembali merujuk pada Step 1 : Connecting to the Internet untuk dapat kembali melakukan konfigurasi Internet.
Pada perintah di atas, kita menambahkan perintah sudo
tepat sebelum command(perintah) dhcpcd
, karena saat ini kita bukan lagi berada pada root
previlege. Kita berada pada akun kita sendiri yang hak aksesnya lebih terbatas. Ditandai dengan simbol $
. Maka dari itu kita memerlukan bantuan sudo
untuk membuat kita dapat mengeksekusi command yang seharusnya hanya bisa dijalankan oleh root
saja.
Kemudian kita akan diminta memasukkan password. Masukkan password user
kita (bukan password root
).
[sudo] password for archer: _
Setelah itu akan muncul pemberitahuan seperti di bawah.
dev: loaded udev
no interfaces have a carrier
forked to background, child pid 342
Sekarang coba lakukan ping lagi dengan cara ping google.com
Mungkin diperlukan 1 - 2 menit untuk menunggu sampai ping
berhasil didapatkan. Apabila berhasil, artinya kita sudah terhubung ke Internet. Saatnya melangkah ke step selanjutnya.
7.2 GNOME Desktop Environment
Pada dokumentasi kali ini saya memilih menggunakan GNOME desktop environment, ketimbang XFCE ataupun KDE. Karena menurut saya desktop environment yang satu ini lebih mudah untuk diajarkan maupun digunakan karena interface-nya yang simpel dan minimalis. Selain itu cukup banyak distribusi sistem operasi GNU/Linux yang lain, yang juga menyertakan GNOME desktop menjadi default environment mereka.
Untuk teman-teman yang ingin menggunakan desktop environment yang lain, dapat merujuk pada Arch Wiki untuk proses instalasinya.
Untuk menginstal GNOME desktop environment, sangat mudah karena kita cukup mengetikkan command di bawah ini.
$ sudo pacman -S gnome gnome-extra
Command di atas dimaksudkan bahwa kita akan memasang dua buah paket aplikasi, gnome
dan gnome-extra
. gnome
berisi paket-paket dasar dari GNOME desktop sedangkan gnome-extra
adalah paket-paket tambahan pendukung GNOME desktop.
Apabila keluar daftar paket-paket dari group gnome
.
Enter a selection (default=all): _
Maka kita memilih all
dengan menekan tombol ENTER
.
Selanjutnya akan keluar daftar paket-paket dari group gnome-extra
.
Enter a selection (default=all): _
Sekali lagi, kita hanya perlu memilih all
dengan menekan tombol ENTER
.
Apabila masih keluar pemberitahuan yang lain untuk memilih default option dari repository extra (seperti: libx264
, xdg-desktop-portal-gtk
, dll), saya memilih nomor 1 (default) saja, jadi tinggal tekan tombol ENTER
.
Setelah itu akan keluar daftar semua paket-paket dari GNOME desktop yang akan kita pasang.
...
...
Total Download Size: 591.06 MiB
Total Installed Size: 2786.74 MiB
:: Proceed with installation? [Y/n]
Tekan tombol Y
→ ENTER
, atau langsung tekan ENTER
untuk memilih Yes. Tunggu proses download dan instalasi hingga selesai.
7.3 Enable GNOME Desktop Manager (Login Manager)
Desktop Manager adalah aplikasi GUI yang menyediakan interface kepada kita untuk dapat login ke dalam sistem kita. Terdapat banyak Desktop Manager pada sistem operasi GNU/Linux. GDM, KDM, LightDM, SDM, dan masih banyak lagi. Karena dokumentasi ini menggunakan GNOME desktop environment, maka kita akan menggunakan desktop manager yang sudah termasuk dalam GNOME base package, yaitu GDM (GNOME Desktop Manager).
Untuk mengaktifkan dan membuat GDM otomatis dijalankan saat sistem pertama kali dinyalakan, kita perlu membuat symlink service dari GDM terlebih dahulu.
$ sudo systemctl enable gdm.service
Created sysmlink /etc/systemd/system/display-manager.service → /usr/lib/ ...
Apabila keluar output seperti di atas, maka proses instalasi GDM telah berhasil.
7.4 Manage Network with GUI
Secara default GNOME desktop belum meiliki aplikasi GUI untuk mengatur konfigurasi network. Maka, kita perlu untuk menambahkan beberapa paket yang mungkin belum termasuk dari base package GNOME desktop. Meskipun paket pendukung networking ini biasanya sudah termasuk dalam paket instalasi saat kita memasang desktop environment.
$ sudo pacman -S networkmanager network-manager-applet wpa_supplicant wpa_actiond dialog iw
Kemudian setelah proses instalasi selesai, kita perlu mengaktifkan service dari networkmanager
agar dapat berjalan saat sistem startup.
$ sudo systemctl enable NetworkManager.service
Created sysmlink /etc/systemd/system/dbus-org.freedesktop.NetworkManager.serv ...
Created sysmlink /etc/systemd/system/multi-user.target.wants/NetworkManager. ...
Created sysmlink /etc/systemd/system/dbus-org.freedesktop.nm-dispatcher.servi ...
Maka pada next reboot, kalian sudah dapat menikmati konfigurasi network melalui GUI. Termasuk konfigurasi wifi juga telah tersedia.
Untuk teman-teman yang wifi adapter-nya tidak terdeteksi. Dapat mencari solusinya di Google yaa. Hehehe. Hal yang dapat kalian jadikan sebagai keyword adalah :
- Apa nama vendor dari network adapter kalian (misal: Intel, Atheros, Broadcom, Realtek, dll)
- Apa type dari network adapter (misal : BCM43XX, rt3573, ath5k, ath9k, dll)
Sumber bacaan lebih lanjut tentang wireless network configuration dapat dibaca di sini.
7.5 Enable Multilib Support for 32 bit Architecture
Meskipun laptop atau komputer kalian sudah menggunakan 64 bit, namun tidak ada salahnya untuk tetap mengaktifkan dukungan library terhadap processor 32 bit. Karena beberapa aplikasi terkadang masih membawa dependensi library 32 bit.
$ sudo nano /etc/pacman.conf
Kemudian scrolling ke bawah, cari bagian [multilib]
, lalu aktifkan (uncommenting) baris tersebut dengan cara menghapus tanda pagar #
.
...
...
# If you want to run 32 bit applications on your x86_64 system,
# enable the multilib repositories as required here.
#[multilib-testing]
#Include = /etc/pacman.d/mirrorlist
[multilib]
Include = /etc/pacman.d/mirrorlist
...
...
Setelah disimpan, lakukan update repository.
$ sudo pacman -Sy
7.6 Enable AUR (Arch User Repository)
Arch Linux selain memiliki official repository yang dikelola oleh tim pengembang, tentu saja juga memiliki repository yang di maintenance oleh Arch user. AUR package yang mempunyai popularitas yang baik akan dipertimbangkan dan berkesempatan untuk masuk ke dalam official repository. AUR repository tidak langsung secara default ada pada daftar repository kita. Kita perlu mengaktifkannya terlebih dahulu.
Terdapat banyak cara, sejauh ini yang saya ketahui ada dua cara untuk mengaktifkan AUR repository. Namun saya hanya akan menuliskan satu saja cara yang menurut saya paling mudah. Yaitu dengan menambahkan custom repository dari archlinuxfr.
$ sudo nano /etc/pacman.conf
Kemudian tambahkan archlinuxfr repository ke bagian paling bawah.
...
...
[archlinuxfr]
Server = http://repo.archlinux.fr/$arch
SigLevel = Never
Setelah menambahkan archlinuxfr repository, saatnya melakukan sinkronisasi.
$ sudo pacman -Sy
Untuk dapat melakukan instalasi paket-paket yang terdapat pada AUR, kita memerlukan package manager tambahan, package manager ini sama seperti pacman
yang juga di jalankan pada Terminal. Selama ini, saya menggunakan dua package manager
untuk memasang paket pada repositori AUR yaitu yaourt
dan pacaur
. Namun kali ini saya hanya akan mendokumentasikan penggunaan yaourt
saja, untuk mempersingkat dan menyederhanakan kerumitan dari dokumentasi ini.
$ sudo pacman -S yaourt rsync customizepkg
Paket Yaourt sudah deprecated (usang). Saya lebih merekomendasikan untuk menggunakan Yay.
Untuk menginstall Yay, sangat mudah, dan tidak perlu menambahkan repo [archlinuxfr]
seperti di atas.
$ git clone https://aur.archlinux.org/yay.git $ cd yay $ makepkg -si
Setelah paket-paket di atas selesai di-install, saya merekomendasikan untuk men-disable kembali archlinuxfr repository, agar tidak terjadi bentrokan atau tumpang tindih paket antar official repository dengan archlinuxfr repository.
Selanjutnya kita perlu untuk melakukan pengaturan pada yaourt
sebelum dapat kita gunakan. Kita akan menjadikan Vim sebagai default text editor untuk melihat PKGBUILD dari paket AUR yang kita install dengan yaourt
. PKGBUILD ini semacam resep yang berisi bahan-bahan dan cara meng-install paket ke dalam sistem Arch Linux kita.
Untuk BASH shell,
$ nano ~/.bashrc
Kita akan menambahkan pada baris terakhir (atau pada baris mana saja)
# PKGBUILD YAOURT
export VISUAL="vim"
Save dan exit.
Cara di atas dimaksudkan apabila nanti yaourt
menampilkan PKGBUILD saat proses instalasi paket, maka akan ditampilkan menggunakan Vim, dan kita bisa langsung exit dengan :q
.
Proses instalasi paket/aplikasi dengan menggunakan yaourt
ini sedikit berbeda dengan menggunakan pacman
. Mungkin kalian dapat mencari informasi pada dokumentasi Archer lain di Google atau Youtube tentang bagaimana proses instalasi paket/aplikasi menggunakan yaourt
.
Karena kita membutuhkan paket-paket yang belum tersedia pada official repositry, sedangkah sudah tersedia pada AUR repository.
Beberapa paket pada AUR terkadang dibutuhkan untuk keleluasaan kita menggunakan distribusi sistem operasi Arch Linux.
Contohnya paket yang tidak terdapat pada official repository adalah: Google Chrome, Spotify, dan masih banyak lagi.
7.7 ZSH Shell
Biasanya secara default, shell yang dibawa setelah proses instalasi adalah BASH s_hell_. Kita dapat melakukan pengecekan dengan perintah di bawah.
$ echo $SHELL
Shell adalah environment pada Terminal emulator tempat kita memasukkan baris-baris command. Terdapat berbagai macam jenis shell dengan kelebihan fitur masing-masing, seperti BASH, ZSH, FISH, DASH, dsb. Saya pribadi lebih prefer menggunakan ZSH shell. ZSH shell fungsinya sama dengan BASH shell namun dengan penambahan fitur-fitur lain, seperti auto completion yang lebih memanjakan jari-jari. Hanya dengan mengetikkan 2 - 3 huruf awalan dari command, kemudian tekan tombol TAB, dengan pintar, ZSH akan melengkapi command yang kita masukkan.
$ sudo pacman -S zsh zsh-completions
Selanjutnya kita akan buat ZSH shell mejadi default shell, agar kita tidak perlu repot mengaktifkan ZSH shell dengan mengetikkan $ zsh
pada Terminal setiap saat.
$ chsh -s /usr/bin/zsh
Untuk me-_restart_ shell tanpa harus mengeluarkan Terminal, cukup masukkan command berikut.
$ exec $SHELL
Biasanya pada kondisi-kondisi tertentu kita perlu melakukan restart terhadap Terminal, seperti sehabis instalasi program via pacman
dan yaourt
untuk dapat memanggil program-program yang baru saja di-_install_ atau di-_update_ tersebut, kita perlu melakukan restart pada Terminal.
Pengaturan terakhir, jangan lupa pindahkan pengaturan shell tambahan yang sudah pernah kita buat pada ~/.bashrc
ke dalam ~/.zshrc
.
$ nano ~/.zshrc
# PKGBUILD YAOURT
export VISUAL="vim"
Simpan dan exit.
7.8 Touchpad Driver
Untuk kalian yang menggunakan laptop, dapat meng-_install driver_ libinput
. libinput
adalah library yang menangani input devices pada Wayland
compositor dan X.org
. libinput
dapat mendeteksi dan mengatur pemrosesan device. Jadi sebenarnya libinput
ini tidak khusus untuk touchpad driver saja.
$ sudo pacman -S xf86-input-libinput
7.9 Graphic Card Driver
Sejak Intel menyediakan dan men-_support_ driver-driver yang open source, Intel graphics sudah secara langsung dapat di-_plug and play_ (pasang tanpa membutuhkan driver). Intel Kernel Module akan berjalan secara otomatis pada saat system boot.
Namun untuk kenyamanan berkomputasi yang lebih baik saya menyarankan untuk tetap meng_intall_ beberapa package pendukung di bawah ini.
7.9.1 Mesa Driver
Pertama, kita perlu meng-_install_ mesa
package, yang menyediakan dukungan terhadap DRI (Direct Rendering Infrastructur) driver untuk akselarasi gambar 3D.
$ sudo pacman -S mesa
7.9.2 DDX Driver (xf86-video)
Untuk dukungan terhadapr DDX driver (yang menyediakan akselarasi gambar 2D pada Xorg
), kita membutuhkan xf86-video-intel
package.
Debian & Ubuntu, Fedora, KDE, merekomendasikan untuk tidak meng-install xf86-video-intel
. Dan tetap menggunakan modesetting driver yang sudah disertakan pada Intel GPU generasi ke 4 dan yang lebih baru.
Namun, bagaimanapun juga modesetting driver ini dapat pula menyebabkan problem seperti Chromium Issue 370022.
$ sudo pacman -S xf86-video-intel
7.9.3 Vulkan Driver
Untuk dukungan terhadap Vulkan 3D rendering, kita perlu meng-_install_ vulkan-intel
package.
$ sudo pacman -S vulkan-intel
Untuk kalian yang menggunakan Intel Processor generasi ke 4 (Skylake), kita perlu menambahkan konfigurasi Xorg
tambahan agar kita dapat mengambil keuntungan dari beberapa driver yang tersedia. Caranya, dengan membuat file konfigurasi pada file /etc/X11/xorg.conf/20-intel.conf
.
$ sudo nano /etc/X11/xorg.conf/20-intel.conf
File 20-intel.conf
ini masih kosong, karena baru saja kita buat. Selanjutnya, isikan seperti contoh di bawah.
Section "Device"
Identifier "Intel Graphics"
Driver "intel"
Option "DRI" "2" # DRI3 is now default
#Option "AccelMethod" "sna" # default
#Option "AccelMethod" "uxa" # fallback
EndSection
Preferensi di atas adalah preferensi yang direkomendasi saat pertama kali kita memasang paket vulkan-intel
.
Namun saya mencoba untuk menggunakan DRI3.
Section "Device"
Identifier "Intel Graphics"
Driver "intel"
# Option "DRI" "2"
Option "DRI" "3" # DRI 3 is now default
Option "AccelMethod" "sna" # default
# Option "AccelMethod" "uxa" # fallback
Option "TearFree" "true"
EndSection
Konfigurasi di atas adalah hasil preferensi saya dari mencari solusi di Arch Forum karena permasalahan hasil video screencast yang flickering. Jadi apabila ternyata tidak cocok atau menyebabkan masalah pada sistem kalian, maka kalian dapat mengikuti preferensi yang direkomendasikan.
Sumber bacaan lebih lanjut dapat dipelajari sendiri pada Arch Wiki di sini (Intel Graphic).
Untuk teman-teman yang menggunakan dual graphic card, seperti Nvidia dan ATI dapat mempelajarinya di sini (NVIDIA) dan di sini (ATI).
Sampai pada tahap ini mungkin kita bisa melakukan restart system terlebih dahulu. Sekalian melakukan pengecekan apakah langkah-langkah konfigurasi yang telah kita lakukan telah berhasil.
$ reboot
Gambar 1 - Tampilan GNOME Desktop Environment
Nah, kalau kalian berhasil mencapai dekstop GNOME seperti pada tampilan di atas. Artinya proses langkah-langkah konfigurasi berjalan sukses.
7.10 Encrypt Home Directory
Selain kita melakukan enkripsi terhadap partisi /
, saya merekomendasikan untuk melakukan enkripsi pada /home
direktori. Tujuannya tentu saja untuk memberikan pengamanan data yang berlapis-lapis. Namun meskipun pengamanannya berlapis, kita cukup memasukkan satu kali password pada saat login dan /home
directory kita sudah otomatis ter-_mounting_.
Pemberian enkripsi pada direktori /home
ini memang sebaiknya dilakukan saat sistem baru pertama kali dipasang. Karena direktori /home
dari user
belum terdapat data-data di dalamnya.
Langkah pertama, kita perlu logout dari sistem.
Setelah sampai di halaman GDM Login Manager, tekan kombinasi tombol CTRL + ALT + F2 untuk berpindah ke tty2
shell.
Kemudian login sebagai root
.
Arch Linux 4.13.12-1-ARCH (tty2)
Archer-Computer login: root
Password: _
Selanjutnya, lakukan pengecekan apakah user
kamu masih memiliki proses yang running.
# Ps -U archer
PID TTY TIME CMD
Apabila mengeluarkan output seperti di atas, artinya sudah tidak ada lagi proses yang runnning pada user archer (ganti dengan username kalian). Dan kita dapat melangkah ke tahap selanjutnya.
Instal package yang diperlukan untuk melakukan enkripsi.
# pacman -S rsync lsof ecryptfs-utils
Tunggu proses instalasinya hingga selesai.
Selanjutnya, modprobe ecryptfs
yang sudah kita instal tadi.
# modprobe ecryptfs
Kalau tidak ada output apa-apa yang keluar, artinya sudah benar.
Selanjutnya, proses menggunakan ecryptfs
untuk mengenkripsi direktori /home
.
# ecryptfs-migrate-home -u archer
archer adalah nama username
saya, ganti dengan username
kalian.
Masukkan password yang sama dengan login password username kalian.
INFO: Checking disk space, this may take a few minutes. Please be patient.
INFO: Checkingfor open files in /home/archer
Enter your login passphrase [archer]: _
Perhatikan dengan seksama output tersebut. Kita diminta memasukkan passphrase atau password yang sama seperti password username kita. Tujuannya agar saat kita login dengan menggunakan akun username kita, secara otomatis ecryptfs
akan men-dekripsi direktori /home
kita yang terenkripsi (baca: auto-mounting /home
directory).
Proses ini akan menghabiskan sedikit waktu, tergantung dari banyaknya file yang ada di dalam direktori /home
.
Setelah selesai, kita dapat logout.
# exit
Kemudian login kembali sebagai user kita.
Arch Linux 4.13.12-1-ARCH (tty2)
Archer-Computer login: archer
Password: _
Kemudian, mounting direktori /home
yang terenkripsi dengan cara,
$ ecryptfs-mount-private
Enter your login passphrase: _
Masukkan password login user kita untuk mendekripsi direktori /home
dan otomatis akan di auto-mounting ke direktori /home
.
Kemudian mungkin kalian ingin melihat wrapped-passphrase
dalam bentuk yang tidak terenkripsi unwrapped-passphrase
.
$ ecryptfs-unwrap-passphrase
Kalian dapat mencatatnya pada secarik kertas dan simpan baik-baik. Kalian dapat menggunakannya untuk me-recovery data-data yang terenkripsi pada kasus misalkan wrapped-passphrase
tiba-tiba hilang atau corrputed atau bahkan kalian lupa login password.
Selanjutnya lakukan pengecekan auto-mount
, auto-unmount
, wrapped-passphrase
.
$ ls .ecryptfs
Private.mnt Private.sig auto-mount auto-unmount wrapped-passphrase
Apabila ada, akan menunjukkan output seperti di atas.
Kemudian kita perlu menambahkan tiga baris propertis pada /etc/pam.d/system-auth
. Ketiga baris propertis ini masing-masing memiliki penempatan yang berbeda-beda. Perhatikan dengan baik susunannya dan tidak boleh asal.
Gunakan text editor Vim atau Nano.
$ sudo nano /etc/pam.d/system-auth
#%PAM-1.0
auth required pam_unix.so try_first_pass nullok
auth required pam_ecryptfs.so unwrap
auth optional pam_permit.so
auth required pam_env.so
account required pam_unix.so
account optional pam_permit.so
account required pam_time.so
password optional pam_ecryptfs.so
password required pam_unix.so try_first_pass nullok sha512 shadow
password optional pam_permit.so
session required pam_limits.so
session required pam_unix.so
session optional pam_ecryptfs.so unwrap
session optional pam_permit.so
Reboot system, dan pastikan kalian dapat login ke user desktop kalian.
Langkah terakhir adalah menghapus backup dari direktori /home
.
$ cd /home
Kemudian tampilkan isi dari direktori /home
.
$ ls
archer archer.p7o6p7R2
Perhatikan bahwa terdapat direktori yang sama dengan direktori username
kita, namun terdapat penambahan random character di belakangnya. Ini adalah hasil backup dari proses enkripsi kita sebelumnya.
Kita dapat menghapusnya dengan aman.
$ sudo rm -rvf archer.p7o6p7R2
Maka proses enkripsi direktori /home
kita telah selesai.
7.11 Set Up Firewall
Cara terbaik untuk mengkonfigurasi firewall adalah dengan menggunakan iptables, namun untuk user biasa seperti kita, rasanya sedikit terlalu rumit apabila menggunakan iptables
. Kita akan menggunakan ufw
(Uncomplicated Firewall) saja yang konfigurasinya lebih mudah.
$ sudo pacman -S ufw
Setelah selesai diinstall coba diaktifkan.
$ sudo ufw enable
Lalu buat ufw.service
running secara otomatis saat sistem start up.
$ sudo systemctl enable ufw.service
Sumber bacaan lebih lanjut dapat kalian temuka di Arch Wiki di sini.
7.12 GUI Package Manager
Mungkin teman-teman bertanya, apakah Arch Linux mempunyai package manger yang tidak text mode namun mempunyai GUI seperti : Synaptic
(Ubuntu), Yumex-DNF
(Fedora), YaST
(OpenSUSE), dan sebagainya. Jawabannya, tentu saja ada. Namun bukan merupakan official package dari Arch Linux, jadi kita dapat menginstallnya dari AUR (Arch User Repository).
$ yaourt pamac-aur
pamac-aur
ini adalah sebuah aplikasi package manager yang mempunyai GUI yang dikembangkan oleh distribusi sistem operasi Manjaro yang juga merupakan turunan dari Arch Linux.
7.13 Daily Applications
Sedang dalam proses penulisan …
Penulis
My journey kicks off from reading textbooks as a former Medical Student to digging bugs as a Software Engineer – a delightful rollercoaster of career twists. Embracing failure with the grace of a Cat avoiding water, I've seamlessly transitioned from Stethoscope to Keyboard. Armed with ability for learning and adapting faster than a Heart Beat, I'm on a mission to turn Code into a Product.
- Rizqi Nur Assyaufi