Saat kita membuka lima aplikasi sekaligus, ada satu program yang terus bekerja di balik layar: memutuskan jendela mana yang tampil di depan, ke mana ketikan keyboard kita dikirim, dan bagaimana layar dibagi. Program tersebut adalah window manager (WM). Pada Chapter ini kita bedah pekerjaan yang dikerjakannya, lalu petakan tiga keluarga besar — stacking, tiling, dan hybrid — beserta contoh populernya seperti Mutter, KWin, i3, dan Hyprland.
Apa yang Dikerjakan Window Manager #
Window manager adalah program khusus pengatur jendela. Tugasnya mencakup menggambar bingkai dan tombol jendela (tutup, perbesar), memindahkan serta mengubah ukuran jendela, menentukan jendela mana yang menerima ketikan keyboard (disebut fokus), dan menyediakan workspace — desktop virtual untuk mengelompokkan aplikasi. Ketika kita menekan Alt+Tab atau menyeret judul jendela, yang menanggapi adalah WM, bukan aplikasi di dalam jendela tersebut.
Cara WM menata jendela membaginya menjadi keluarga-keluarga dengan filosofi berbeda. Tiga keluarga terpenting dirangkum berikut:
| Keluarga | Cara menata jendela | Contoh | Cocok untuk |
|---|---|---|---|
| Stacking | bebas bertumpuk, digerakkan mouse | Mutter, KWin, Xfwm4 | mayoritas pengguna |
| Tiling | mengisi layar tanpa tumpang tindih | i3, Sway, bspwm | pengguna keyboard, layar lebar |
| Hybrid / dynamic | kombinasi keduanya, otomatis | Awesome, Hyprland | pengguna yang suka menyetel |
Stacking Window Manager #
Gaya stacking (juga disebut floating) menempatkan jendela seperti kertas di atas meja: bebas digeser, ditumpuk, dikecilkan, dan dimaksimalkan. Ini model yang paling akrab karena dipakai Windows dan macOS. Di Linux, Mutter adalah WM bawaan GNOME, KWin milik KDE Plasma, dan Xfwm4 milik Xfce. Ketiganya menambahkan sentuhan modern seperti snap ke tepi layar, animasi, dan workspace bergeser.
Tiling Window Manager #
Gaya tiling membagi layar menjadi slot-slot yang tidak saling menindih: jendela baru otomatis mengisi ruang kosong, dan setiap jendela selalu terlihat. Operasinya didominasi keyboard. Contohnya i3, WM tiling manual yang legendaris; Sway, tiling kompatibel dengan konfigurasi i3 namun berjalan di Wayland; dan bspwm yang membagi layar dengan struktur pohon binary space partitioning. Perilaku i3 ditata lewat satu berkas teks bernama ~/.config/i3/config — berikut contoh potongan isinya:
set $mod Mod4
bindsym $mod+Return exec i3-sensible-terminal
bindsym $mod+h focus left
bindsym $mod+v split v
bindsym $mod+f fullscreen toggleMari kita bedah arti tiap baris potongan di atas:
- Baris
set $mod Mod4: mendefinisikan tombol pengubah$modsebagaiMod4, yaitu tombol Super/Windows di papan ketik. - Baris
bindsym $mod+Return ...: mengikat kombinasi Super+Enter untuk menjalankan terminal;i3-sensible-terminalmembuka terminal pertama yang tersedia di sistem. - Baris
bindsym $mod+h focus left: memindahkan fokus keyboard ke jendela sebelah kiri tanpa menyentuh mouse. - Baris
bindsym $mod+v split v: membuat jendela berikutnya membelah ruang secara vertikal. - Baris
bindsym $mod+f fullscreen toggle: mengaktifkan atau menonaktifkan mode layar penuh pada jendela aktif.
Pemetaan satu tombol untuk satu aksi semacam ini membuat alur kerja sangat cepat — sekali dihafal, tangan hampir tidak meninggalkan baris tombol utama. Perbandingan menyeluruh antar WM tiling tersedia di halaman perbandingan di ArchWiki .
Hybrid dan Dynamic Window Manager #
Keluarga ketiga menggabungkan keduanya. Awesome bisa menampilkan jendela floating dan tiling sekaligus, dan seluruh perilakunya diprogram ulang lewat skrip Lua. Hyprland, pendatang yang populer, mengelola dynamic tiling: ukuran dan posisi jendela disesuaikan otomatis secara proporsional, dilengkapi animasi dan efek transparan modern, serta berjalan di atas Wayland. Keluarga ini menuntut investasi belajar di awal, tetapi mengembalikannya lewat efisiensi jangka panjang.
Window Manager versus Desktop Environment #
Hubungan WM dan DE sering membingungkan pemula. Window manager adalah satu komponen di dalam sebuah DE — GNOME memakai Mutter, KDE Plasma memakai KWin — sedangkan desktop environment adalah paket lengkap yang juga membawa panel, file manager, terminal, pusat pengaturan, dan tema. Keduanya tetap bisa dipakai terpisah: banyak pengguna menjalankan i3 atau Hyprland tanpa DE, lalu memasang pelengkap yang dibutuhkan saja. Perbandingannya:
| Aspek | WM saja (mis. i3) | Desktop environment |
|---|---|---|
| Isi paket | pengatur jendela saja | WM + panel + file manager + pengaturan |
| Cara mengatur | berkas konfigurasi teks | antarmuka grafis |
| Jejak memori | kecil | lebih besar |
| Pematangan awal | perlu membaca dokumentasi | langsung terpakai |
Sekarang kita paham siapa yang mengatur jendela, tetapi belum siapa yang benar-benar menggambar piksel ke layar dan menyalurkan klik mouse. Tugas itu dipegang lapisan di bawah WM: display server — konsep lama X11 dan penerus modernnya, Wayland, yang kita bahas pada Chapter Display Server dan Wayland.