2 poin oleh GN⁺ 2025-03-13 | 1 komentar | Bagikan ke WhatsApp
  • Seorang pengguna yang sudah lama memakai Sway dan i3 beralih dari tiling window manager tradisional ke Niri setelah mengalami bug klik-seret di Sway
  • Niri memperlakukan workspace seperti strip tak terbatas yang bisa digulir ke kiri dan kanan, sehingga saat membuka jendela baru susunan jendela yang ada tidak banyak terganggu
  • Setelah beralih, penulis bisa membuat konfigurasi yang cukup layak dalam beberapa jam dan dalam seminggu merasa sistemnya lebih cocok daripada Sway; kelebihannya meliputi berbagi layar per jendela, pengecualian dari screen sharing, tangkapan layar bawaan, dan peningkatan baterai sekitar 2 jam
  • Tiling window manager tradisional menimbulkan beban kognitif dalam penataan ulang jendela dan pengelolaan workspace; jumlah workspace yang sebelumnya lebih dari 11 di Sway turun menjadi 5 atau kurang di Niri
  • Dengan mempertimbangkan beragam ukuran layar dan performa pemrosesan, tiling tradisional tidak harus menjadi workflow default bagi power user, dan pengguna Sway atau tiling berbasis Wayland layak mencoba Niri

Alasan pindah dari Sway ke Niri

  • Penulis telah memakai tiling window manager selama sekitar 35% hidupnya, termasuk 5 tahun dengan Sway dan 2 tahun dengan i3
  • Karena cukup awal memakai Wayland, ia sudah terbiasa dengan banyak hal yang rusak, dan juga telah lama beradaptasi dengan workflow Sway
  • Pemicu langsungnya adalah masalah klik-seret di Sway, di mana setelah memilih teks lalu menyeret, aksi seleksi tetap berlanjut bahkan setelah tombol mouse dilepas
    • Selama beberapa hari yang berubah menjadi beberapa minggu tanpa perbaikan, tindakan mengklik untuk memilih teks itu sendiri menjadi terasa tidak pasti
    • Alih-alih mencari library penyebabnya atau menjalankan git bisect, ia memutuskan meninggalkan muscle memory dan workflow lamanya lalu mencoba Niri

Cara kerja Niri dan kesan pertama

  • Niri adalah scrolling tiling window manager, di mana setiap workspace bekerja seperti pita tak terbatas yang dapat digulir secara horizontal
  • Saat jendela baru dibuka, tata letak jendela lain tidak diubah, sehingga ketika membuka terminal, Firefox tidak lagi terdorong ke posisi yang tak terduga
  • Dalam beberapa jam, ia sudah membuat konfigurasi yang cukup nyaman dipakai, dan dalam seminggu hasilnya terasa lebih pas daripada Sway
  • Ia mengatakan pengalaman ini menghidupkan kembali sensasi masa ketika nekat mencoba distro atau window manager baru yang tampak asing dan berisiko

Peningkatan yang terasa dibanding Sway

  • Niri mendukung screen sharing per jendela dan juga menyediakan fitur agar jendela tertentu tidak muncul saat layar dibagikan
    • Saat melakukan streaming tugas, ini mengurangi kekhawatiran bahwa notifikasi sensitif seperti email dari bank akan muncul di sudut layar
  • Alat tangkapan layar bawaannya memuaskan, dan dinilai lebih baik daripada kombinasi grim+slurp yang direkomendasikan untuk Sway
  • Dibandingkan Sway, daya tahan baterai meningkat sekitar 2 jam
  • Bahkan saat mencoba menambahkan fitur IPC ke Niri, pengalaman pengembangannya terasa baik
    • Tidak seperti Sway/wlroots, Niri/Smithay ditulis dalam Rust
    • Menurutnya, kodenya lebih mudah diakses daripada yang ia perkirakan

Ketidakpuasan terhadap tiling window manager tradisional

  • Tiling window manager tradisional mendorong pengguna untuk memaksimalkan efisiensi tata letak jendela, dan dalam prosesnya membuat orang menghabiskan beban kognitif pada sasaran keliru, yaitu meminimalkan penataan ulang jendela
  • Jika tidak terus-menerus berpindah antara mode layar penuh dan non-layar penuh, atau tidak terus kehabisan workspace, maka kemungkinan sebenarnya jumlah jendela yang terbuka tidak banyak
  • Layout bertab, bertumpuk, dan container bersarang dinilai sebagai tambal sulam yang kurang ergonomis untuk menutupi keterbatasan ruang
  • Di Sway, ia sering membuka hingga 11 workspace, bahkan menambahkan shortcut untuk workspace 11 sampai 20 karena masih terasa kurang
    • Ada kalanya ia menutup jendela demi menghemat workspace lalu kehilangan alur proyek
    • Di Niri, bahkan saat membuka 3 proyek besar, beberapa aplikasi chat, video YouTube, dan beban kerja setara 3 kelas, jumlah workspace tetap tidak melebihi 5
    • Konfigurasi yang sama di Sway bisa terdorong hingga workspace 15, dan untuk menemukan materi yang diinginkan ia harus bolak-balik di banyak workspace

Konteks ukuran layar, DPI, dan ultrawide

  • Dengan mempertimbangkan beragam ukuran layar dan peningkatan performa pemrosesan, ia menilai tiling window manager tradisional tidak harus menjadi pilihan dasar untuk workflow power user
  • Tiling tradisional dinilai membatasi ruang secara artifisial, memaksa penataan ulang konten, dan kurang cocok dengan tata letak monitor non-standar
  • Alasan utama berpindah ke Wayland adalah DPI campuran
    • Jika monitor 4K dan monitor FHD dengan ukuran fisik yang sama dipakai bersamaan, kepadatan piksel di sisi 4K sekitar 4 kali lebih tinggi
    • Jendela dengan lebar piksel tetap bisa tampak kecil di 4K dan besar di FHD
    • Agar jendela terlihat berukuran fisik mirip, diperlukan scaling
    • Implementasi X11 saat itu tidak cocok untuk kebutuhan ini, sedangkan Wayland mendukungnya sebagai fitur inti
    • X11 juga kesulitan dengan fractional scaling non-integer seperti 1.6, dan menurutnya Wayland lebih baik dalam hal ini
  • Scrolling tiling window manager dinilai sangat cocok dengan monitor ultrawide
    • Sway membuat jendela baru memenuhi seluruh lebar ultrawide, sedangkan model Niri menata ubin secara lebih alami dan memanfaatkan ruang lebih baik
  • Ia menyarankan pengguna tiling window manager tradisional berbasis Wayland seperti Sway untuk langsung mencoba Niri
    • Jika menginginkan pengalaman key binding yang mirip Sway, Anda bisa melihat konfigurasi Niri yang dibagikan

1 komentar

 
GN⁺ 2025-03-13
Pendapat di Hacker News
  • Saya memakai Gnome dan hampir semua jendela saya buka dalam layar penuh. Sesekali saya juga membuat jendela setengah lebar dengan win+left/right; apakah ini berarti saya manusia purba?

    • Kalau melihat “street cred” penulis, perlu juga diingat bahwa ia baru berusia 20 tahun. Banyak orang mungkin merasa bahwa saat berusia 20 tahun, kesabaran untuk menanggung segala macam utak-atik dan kerja sia-sia di software nyaris tak terbatas dibandingkan setelah beberapa tahun bekerja atau setelah punya keluarga.
      Selama 20 tahun terakhir, saya sudah melihat belasan tiling window manager yang disebut sebagai “masa depan” muncul lalu menghilang. Secara realistis, fitur-fitur yang benar-benar meningkatkan produktivitas secara signifikan sudah lama masuk ke window manager utama, dan window manager tiling murni kemungkinan besar akan tetap menjadi produk ceruk ke depannya.
      Pada akhirnya, agar bisa dipakai dengan baik, perlu waktu dan usaha yang cukup besar; peningkatan produktivitas yang didapat secara realistis hanya bertahap, sementara kita juga harus menerima berbagai sisi kasar khas produk ceruk seperti ini.
    • Saya juga dulu mirip, lalu menyadari bahwa alur kerja saya cukup cocok dengan tiling window manager. Untuk aplikasi sementara saya memakai split, misalnya masuk ke terminal sekitar 30 detik; selain itu, tiap aplikasi saya beri satu workspace atau satu layar penuh.
      Ini hanya sedikit lebih baik daripada Gnome, tetapi sejak awal jendela lebih mungkin berada di tempat yang tepat, dan jujur saja, seberapa sering kita benar-benar perlu menumpuk jendela saling bertindih di sumbu z?
      Awalnya saya berpikir window manager yang lebih baik adalah kanvas 2D tak terbatas yang posisi dan tingkat zoom-nya bisa diikat ke tombol, seperti kamera di game strategi real-time. Namun setelah mencoba Niri, saya yakin ide saya terlalu rumit, sementara Niri mengenai titik yang pas antara fungsionalitas dan kegunaan.
      Rasanya seperti teknologi hadiah dari alien masa depan.
    • Saya rasa kebanyakan orang bekerja seperti itu. Saya pernah melihat rekan mengembangkan React di MacBook; jendela-jendelanya dibiarkan begitu saja pada ukuran dan posisi saat dibuka, bahkan tidak layar penuh, jadi bagi kepala saya yang memakai 3 monitor, itu sulit dipahami.
      Saya memakai laptop, monitor 24 inci horizontal di tengah, dan monitor 24 inci vertikal; Spotify/Teams/shell/Outlook saya taruh dalam split setengah vertikal, dokumen di layar laptop, dan IDE layar penuh di layar utama. Desktop virtual juga saya bagi untuk desain/riset, pengembangan, dan penggunaan pribadi.
      Menjaga ukuran monitor tetap standar alih-alih 4K atau ultrawide juga membuat berbagi layar jauh lebih sederhana.
      Keluhan kecilnya, desain UI zaman sekarang menaruh padding 10px di mana-mana, sehingga kebanyakan aplikasi dan halaman terasa harus layar penuh agar bisa melakukan sesuatu.
    • Persis sama dengan saya. Yang benar-benar saya inginkan adalah Gnome yang sedikit lebih bisa ditiling, yang sesekali saat diperlukan bisa membagi layar menjadi 3 atau 4 bagian.
      Namun sebagian besar kebutuhan tiling saya ada di dalam terminal, dan tmux berperan sebagai pahlawan.
    • Sepertinya ada yang akan suka ekstensi seperti ini.
      https://extensions.gnome.org/extension/4548/tactile/
      Saya sendiri pindahan dari i3, tetapi jika tidak menginginkan ekstensi tiling penuh dan hanya ingin sedikit kenyamanan tiling, Tactile terasa berguna sebagai solusi yang sangat sederhana.
  • Kalau berpindah dari tiling window manager tradisional, saya ingin tahu seperti apa alur kerja shortcut-nya.
    Yang paling penting bagi saya adalah shortcut tetap seperti Super+[0-9] untuk menuju jendela tertentu, workspace tertentu, atau pada dasarnya program tertentu. Kalau itu memungkinkan dan juga menyelesaikan masalah “manajemen workspace” yang disebut di tulisan, saya mungkin langsung pindah.
    Apakah masuk akal memakai “workspace” seperti ini di Niri? Misalnya punya satu workspace untuk browser, satu untuk editor, dan satu untuk beberapa jendela terminal, lalu ingin langsung beralih dari “browser” ke “terminal-terminal”. Saya tidak ingin ada efek animasi.

    • Bisa. Niri juga tetap mendukung workspace bernomor seperti window manager semacam Sway. Hanya saja sekarang juga bisa digulir secara horizontal.
    • Niri tetap dipakai mirip dengan tiling window manager lain, tetapi enaknya kita bisa mengelompokkan aplikasi pendukung dengan aplikasi utama, bukan satu workspace per aplikasi.
      Misalnya password manager saya taruh di workspace yang sama dengan browser, dan biasanya berada di luar layar. Saat perlu membuat kata sandi, ia langsung ada di sebelah. Terminal pendukung yang dibutuhkan di samping editor teks juga saya perlakukan seperti itu.
    • Di Sway, bisa mencoba papersway; di Hyprland, hyprscroller untuk mencoba tiling seperti Niri, atau lebih tepatnya seperti PaperWM. Saya memakai yang terakhir, dan pada dasarnya hampir sama dengan tiling biasa serta bisa memakai workspace bernama.
      Namun saya merasa memori otot dari bekerja dalam batasan tiling tradisional masih cukup tersisa. Misalnya, di monitor saya, kalau membuka lebih dari 3 terminal, saya harus pindah ke workspace baru.
      Jadi meskipun sebenarnya tidak perlu, saya sering pindah ke workspace baru dan jadi agak bingung apa ada di mana. Kadang saya berpikir mungkin akan lebih mudah kalau pemutusan dari cara kerja lama dibuat lebih tegas.
      Meski begitu, saya sangat menyukai tiling dengan cara yang mirip Niri. Menurut saya, itu menghilangkan hampir semua kelemahan tiling window manager.
    • Saya memakai i3 selama setahun terakhir, dan saya merasakan semua ketidaknyamanan yang disebut dalam tulisan ini.
      Secara keseluruhan saya jauh lebih menyukai i3 daripada Gnome, tetapi penderitaan “semuanya ikut di-resize” itu sangat nyata. Terutama saat banyak panggilan Zoom; masalahnya makin parah karena “notifikasi” Zoom tampaknya melewati notifikasi bawaan sistem dan memperlakukan masing-masing seperti jendela terpisah.
      Saya harus mencoba Niri.
    • Untuk penggunaan seperti Super+X di Mac, saya juga sangat merekomendasikan rcmd.
  • Bagi saya kurang cocok. Ada deretan jendela yang berlanjut melewati batas layar, dan tampilan ketika kadang hanya separuh jendela terlihat menimbulkan rasa gelisah yang aneh sehingga terus menarik perhatian saya.
    Setelah memakainya sekitar dua bulan, saya kembali ke Hyprland, kompositor tiling yang lebih tradisional dan jendelanya tidak bertumpuk dengan batas layar.
    Namun secara teknis Niri sangat indah. Codebase Rust-nya modern, struktur kodenya bagus, dan mudah dipahami untuk mulai dimodifikasi.

    • Saya mengatur lebar kolom sedemikian rupa sehingga jendela sebagian hampir tidak pernah muncul di tepi.
      Di laptop, tergantung pekerjaan, saya memakai lebar penuh atau 1/2 lebar; di ultrawide, saya memakai 1/3 lebar atau lebar penuh untuk editor yang punya pembagian kolom internal.
    • Kalau layar lebar, apakah ini jadi lebih baik atau lebih buruk? Saya suka bekerja di UWQHD
  • Saya suka ide window manager tiling, jadi cukup lama mencoba i3 dan Hyprland, tetapi entah kenapa tidak pernah benar-benar menetap dan akhirnya selalu kembali ke Xfce. Kebiasaan lama sulit hilang
    Momen eksperimen biasanya berakhir ketika jumlah jendela melewati batas tertentu. Kalau workspace, layout, dan sebagainya belum diatur cukup mendalam, sejak saat itu pengelolaannya jadi lebih sulit
    Saya baru saja menyalakan Niri, dan dalam 10 menit sudah terasa jauh lebih nyaman daripada window manager tiling lain. Langsung intuitif, dan integrasi mouse-nya juga sangat bagus
    Masih terlalu dini untuk menyatakan kemenangan, tetapi ini benar-benar tampak seperti hal yang saya inginkan dan butuhkan selama bertahun-tahun. Seberapa bagusnya akan saya nilai dari berapa lama sampai muncul keinginan kembali ke Xfce

    • Saya juga tidak terlalu cocok dengan tiling. Mungkin karena saya memakai Linux terutama di laptop; layarnya kecil, jadi selain membagi layar menjadi dua, sulit melakukan banyak tiling, dan itu pun kurang cocok dengan hal seperti IDE
      Bagi saya, konfigurasi paling optimal adalah window manager/desktop environment floating yang biasa, membosankan, tidak ikut tren, dengan tiling opsional ringan
  • Menarik dibaca. Setiap orang punya titik batasnya
    Saya suka bagian: “Tentu saja, alih-alih mencari library mana yang membuat breaking change dan menjalankan git bisect selama 4 jam, saya memutuskan membuang hampir 10 tahun muscle memory dan perbaikan workflow ke luar jendela”

  • Saya juga pengguna lama i3/Sway, dan Niri terasa cukup nyaman. Sebagian besar muscle memory Sway seperti memindahkan fokus atau memindahkan jendela bisa saya bawa begitu saja. Stabilitasnya juga sangat bagus dan langsung berjalan baik dengan xwayland-satellite
    Masalah terbesar adalah saya terus “kehilangan” jendela. Saya membuka jendela di dalam stack yang bersarang dalam, lalu mengerjakan hal lain, dan lupa bahwa jendela itu sudah terbuka
    Di Sway hal itu juga terjadi sampai batas tertentu, tetapi jauh lebih mudah menelusuri semua workspace
    Akan bagus kalau ada semacam “peta jendela” yang diikat ke Alt-Tab

    • Maksudnya sesuatu seperti issue yang pernah saya tautkan ini? https://news.ycombinator.com/item?id=43347909
      Sebagai catatan, saya meniru fitur run-or-raise dengan kombinasi aneh niri IPC / bash / jq, dan mungkin bekerja lebih baik daripada RoR asli. Ia menggilir jendela yang cocok dengan appId tertentu, dan kalau tidak ada, menjalankan yang baru
      Setelah saya tambahkan rofi (wayland) untuk berpindah ke semua jendela yang terbuka lewat fuzzy search, rasanya jauh lebih baik
    • Apakah alttab bisa memenuhi kebutuhan itu? Saya memakainya bersama xmonad dan berjalan baik. https://github.com/sagb/alttab
    • Hyprscroller, plugin Hyprland yang fungsinya mirip Niri, punya fitur sejenis “expose”. Namun saya sering lupa fitur itu ada
  • Saya termasuk generasi muda yang memakai Hyprland, tetapi sempat mencoba Niri dan itu bekerja cukup baik. Untuk orang yang datang dari workflow Windows rata-rata dengan satu monitor, terutama untuk sebagian besar pekerjaan kantoran, ini sangat cocok
    Meski begitu, saya tetap berpikir konfigurasi tiling yang lebih kompleks punya batas produktivitas yang lebih tinggi. Kalau seseorang seperti penulis ini membuka lebih dari 10 workspace, sepertinya ia memang harus memilih Niri
    Saya penasaran apakah peningkatan daya tahan baterai tetap terasa bagi orang yang hanya membuka beberapa jendela. Selisih 2 jam hanya karena mengganti window manager itu sangat besar

    • Saya masih bolak-balik antara Wayland dan X11, dan bahkan di T14s gen-2 lama saya, kombinasi X11+xmonad+tanpa compositor rata-rata bertahan 1,5 jam lebih lama
      Ini salah satu alasan utama saya sulit beralih sepenuhnya. Saya juga tidak memakai desktop environment, dan tidak memakai fitur yang membuat compositor benar-benar berguna, jadi dari sudut pandang saya hampir tidak ada kelebihannya
      Sesekali yang terlihat hanya border hitam akibat dropdown bershadow dari program gtk4 yang tidak mengikuti tema sistem yang saya atur
  • Saya belum mencoba Niri, tetapi tertarik
    Belakangan ini di GNOME saya cukup merasakan pengalaman window manager yang bisa discroll dengan ekstensi PaperWM: https://github.com/paperwm/PaperWM

    • Niri terinspirasi dari PaperWM dan jauh lebih mulus. Kalau suka PaperWM, niri layak dilihat
      Namun karena tidak dibuat di dalam lingkungan Gnome, ada sedikit kekurangan. Beberapa hal yang disediakan Gnome “gratis” tidak ada di Niri, dan untuk fitur yang cukup mendasar pun kita harus mencari sendiri alat penggantinya
      Hal-hal yang tampaknya tidak ada mencakup notifikasi desktop, app launcher, dock atau daftar aplikasi yang sedang berjalan, serta Xwayland untuk menjalankan aplikasi X11 dengan mulus. Semua fitur ini harus disediakan oleh alat terpisah yang tidak termasuk dalam Niri
      Keluhan terbesar saya adalah tidak adanya sinkronisasi clipboard antara X11 dan Wayland. Gnome tampaknya menangani ini otomatis, tetapi di Niri tidak begitu, sehingga tidak bisa copy/paste antara aplikasi Wayland dan aplikasi X11 sangat menjengkelkan
      Ada workaround, tetapi sejauh ini belum ada yang saya coba yang cukup nyaman dan stabil
  • Window manager yang bisa discroll benar-benar luar biasa. Kita bisa mendapatkan sekitar 80% produktivitas window manager tiling dengan 20% usaha
    Menarik bahwa butuh 30–40 tahun untuk menemukan ini

    • Saya melihat video di situsnya, dan dari sudut pandang orang yang cukup sering memakai drag and drop antarprogram, itu terlihat seperti neraka total
      Saya juga tipe orang yang tab browser terbukanya bertambah tanpa batas sampai akhirnya harus mem-bookmark ratusan tab dan menutup semuanya, jadi keseluruhan paradigma ini benar-benar tampak tidak cocok untuk saya
    • Saat memakai i3, saya punya sesuatu yang sangat mirip
      Itu kode Python seadanya yang memungkinkan saya men-yank jendela masuk/keluar stack berdasarkan nama, dan menyingkirkan jendela paling lama di stack. Pada dasarnya itu cache LRU untuk jendela
      Itu “berfungsi”, tetapi kalau PaperWM sudah ada saat saya masih mahasiswa, saya rasa saya akan sangat menikmatinya
      Ada juga hal-hal yang hanya bisa dilakukan dengan baik oleh window manager floating. Saya suka kebiasaan buruk saya memasang beberapa dokumen sebagai floating di berbagai bagian layar, lalu melakukan rujuk-silang tanpa banyak berpindah
  • Jika ingin mempelajari lebih banyak tentang apa yang terjadi di desktop Linux, saya bisa merekomendasikan siapa pun untuk mencoba setidaknya satu window manager non-standar
    Saya belajar tentang Linux dari mengutak-atik tiling window manager lebih banyak daripada dari jenis perangkat lunak lainnya
    Saya tidak tahu apakah produktivitas saya benar-benar meningkat, tetapi itu pengalaman belajar yang luar biasa, ergonominya juga bagus, dan rasa puas karena membangun lingkungan desktop sendiri dari nol itu sangat besar

    • Menurut kalian, window manager apa yang paling menarik?