Konfigurasi DWM Saya

JagoTekno – Akhirnya selesai juga konfigurasi DWM terbaru saya. Dalam artikel ini saya hanya ingin menjelaskan secara singkat apa saja yang saya lakukan untuk membuat konfigurasi seperti ini.

Ini adalah konfigurasi yang sangat minimalis tapi sudah sangat sesuai dengan kebutuhan saya.

Setelah mempelajari beberapa sifat DWM melalui config DWM orang lain di internet, saya pun berhasil melakukan patching DWM sendiri.

tampilan dwm fullgaps

Install DWM versi terbaru

Langkah pertama adalah install DWM versi terbaru. Saat ini DWM terbaru ada di versi 6.2. Caranya lakukan dengan git clone

git clone https://git.suckless.org/dwm

Setelah itu masuk ke direktory/folder DWM yang baru saja di clone, kemudian lakukan compile DWM.

Tapi sebelumnya pastikan anda sudah install make lalu jalankan perintah berikut.

sudo make clean install 

Menjalankan DWM

Menjalankan dwm dengan cara edit file .xinitrc yang ada di /home

vim ~/.xinitrc

Setelah itu masukkan kode ini pada bagian akhir

while true; do    
    dwm >/dev/null 2>&1    
done    

exec dwm

Anda bisa cek dimana dwm terinstall dengan perintah dasar linux which

which dwm

Patch DWM

Sampai di sini DWM sudah bisa digunakan, tetapi saya butuh beberapa fungsi DWM seperti :

  • Menampilkan icon pada Tray
  • Menampikan efek gaps pada masing-masing window

Nah, di DWM ada fasilitas Patch, yang mana semacam plugin yang ditambahkan pada DWM.

Patch yang saya gunakan seperti :

  • FullGaps
  • Autostart
  • Warp
  • Systray
  • Pertag
  • AlwaysCenter

Penjelasan patch DWM terbaik yang saya gunakan

Di sini saya akan menjelaskan secara singkat tentang patch yang saya gunakan dan saya rasa sudah cukup untuk kebutuhan saya saat ini.

Autostart

Patch ini digunakan untuk menambahkan fitur autostart pada beberapa program yang diinginkan saat sistem pertama kali booting.

Contohnya, saya ingin selalu menjalankan DWMBlocks saat pertama kali booting. Maka saya pun melakukan patch ini lalu membuat file bernama autostart.sh. Kemudian di dalam file tersebut didefinisikan perintah apa saja yang ingin dijalankan. Begini contoh script file autostart.sh.

!/bin/sh

dwmblocks &

Simpan file ini di ~/.local/share/dwm/autostart.sh

Maka ketika dwm reload, script dwmblocks akan selalu ikut aktif.

Sebenarnya tanpa patch ini fungsi dwmblocks masih bisa digunakan dengan menambahkan dwmblocks & pada file .xinitrc. Tetapi karena saya ingin .xinitrc tetap bersih maka saya melakukan cara ini.

FullGaps

Patch ini memiliki fungsi untuk memberikan efek gap antara window yang dibuka pada satu tag.

Nilai gaps bisa diatur seberapa besar gap yang diinginkan.

Shortcut default yang ditambahkan setelah melakukan patch adalah mod + plus dan minus untuk menambahkan atau mengurangi gap antara window.

Systray

Ini adalah patch favorit saya. Di sini saya bisa menampilkan tray icon pada sudut kanan atas.

Pada versi terbaru, kita bisa mengatur tampilan tray sebelum status (jam dan tanggal yang ditampilkan menggunakan Dwmblocks).

Jadi bisa mirip seperti tampilan desktop pada umumnya.

Warp

Patch ini digunakan untuk membuat mouse selalu mengikuti window yang sedang aktif atau dipilih untuk diaktifkan.

Pertag

Patch ini digunakan untuk set tampilan yang berbeda pada tiap tag [1], [2], dst.

Misalnya di tag [1] di set dengan tampilan Monocle, nah pada saat pindah ke tag [2] maka kita bisa set mode tampilan yang berbeda seperti Floating, dan lain-lain.

AlwaysCenter

Patch ini gunanya untuk membuat Floating window yang dibuka selalu muncul di tengah layar, bukan di sudut kiri atas.

Cara melakukan patch DWM Suckless

Karena saya masih sangat pemula menggunakan DWM, ketika setiap kali melakukan patch saya melakukan copy paste terhadap folder DWM yang ingin saya build. Tujuanya hanya sebagai backup saya, menjaga-jaga jika saat proses patch menjadi gagal.

Langkah pertama yang dilakukan adalah mendownload file patch yang diinginkan melalui situs dwm.

Misalnya, systray, yang digunakan untuk menampilkan tray icon pada bagian status bar (sudut kanan atas).

Pada halaman patch tersebut, terdapat beberapa link berekstensi .diff. Pilih yang terbaru dengan cara melihat tanggal release nya.

Cara save file .diff tersebut saya menggunakan perintah wget lalu simpan di folder DWM supaya gampang melakukan patch nantinya.

Setelah file .diff tersimpan, sekarang lakukan proses patching.

Jadi command untuk patch adalah :

patch -p1 < nama-file-patch.diff

Tunggu prosesnya sampai selesai. Jika tidak terdapat error, jalankan sudo make clean install untuk mengcompile ulang DWM. Perintah ini akan terus dilakukan setelah melakukan patching.

Setelah proses compiling selesai restart DWM dengan Mod+Shift+q. Anda akan melihat hasilnya pada.

Pada saat proses patching, ada yang hanya mengubah file dwm.c ada juga yang ikut mengubah file config.def.h

Jadi sebelum patching, Anda bisa baca-baca beberapa baris file .diff tersebut. Lalu jika terdapat error saat patching anda bisa melakukan pathcing dengan manual.

Cara melakukan patching dwm dengan manual

Jika terdapat error saat patching, lakukan saja patching dengan manual dengan copy paste baris yang memiliki tanda + di depannya.

Pesan error saat patching muncul pada saat patching atau saat compiling yang tertera pada file .rej.

Untuk memperbaiki error ini, buka edit file dimaksud oleh .rej. Misalnya error patching menghasilkan file dwm.c.rej, maka anda harus mengedit file dwm.c.

Ikuti baris yang yang diinginkan patching lalu save dan compile.

Maka dengan cara ini biasanya tidak ada lagi error pada saat proses patch dwm di sistem anda.

Konfigurasi shorcut / keybind

Untuk menyesuaikan dengan kebiasaan, saya melakukan beberapa perubahan terhadap file config.h.

File config.h bisa dihapus sebelum melakukan compiling, karena itu akan diregenerate lagi dari config.def.h.

Tetapi jika memiliki konfigurasi tertentu, alangkah baiknya edit saja file config.h ini.

File ini biasanya saya edit dengan menambahkan fitur keybind yang saya inginkan.

Misalnya untuk membuka browser, saya cukup menggunakan shortcut Mod+w atau untuk menampilkan Nemo file manager, saya gunakan shorcut Mod+e dan beberapa shortcut keybind lainnya.

Akhir kata

Demikian tutorial sigkat tentang cara konfigurasi DWM dan melakukan patch untuk mendapatkan fitur yang lebih advance.

Saat ini saya rasa cukup memiliki konfigurasi seperti ini.

Tinggalkan komentar