This application is a part of the nwg-shell project.

Nwg-drawer is a golang replacement to the nwggrid command (a part of nwg-launchers). It's being developed with sway in mind, but should also work with other wlroots-based Wayland compositors. X Window System is not supported.

The nwg-drawer command displays the application grid. The search entry allows to look for installed applications, and for files in XDG user directories. The grid view may also be filtered by categories.

You may pin applications by right-clicking them. Pinned items will appear above the application grid. Right-click a pinned item to unpin it. The pinned items cache is shared with nwg-menu and nwggrid.



  • go 1.16 (just to build)
  • gtk3
  • gtk-layer-shell

Optional (recommended):

  • thunar
  • alacritty

You may use another file manager and terminal emulator (see command line arguments), but for now the program has only been tested with the two mentioned above.


  1. Clone the repository, cd into it.
  2. Install necessary golang libraries with make get.
  3. make build
  4. sudo make install

Building the gotk3 library takes quite a lot of time. If your machine is x86_64, you may skip steps 2-3, and install the provided binary by executing step 4.

Command line arguments

$ nwg-drawer -h
Usage of nwg-drawer:
  -c uint
    	number of Columns (default 6)
  -fm string
    	File Manager (default "thunar")
  -fscol uint
    	File Search result COLumns (default 2)
  -fslen int
    	File Search name length Limit (default 80)
  -is int
    	Icon Size (default 64)
  -lang string
    	force lang, e.g. "en", "pl"
  -o string
    	name of the Output to display the drawer on (sway only)
    	use OVerLay layer
  -s string
    	Styling: css file name (default "drawer.css")
  -spacing uint
    	icon spacing (default 20)
  -term string
    	Terminal emulator (default "alacritty")
  -v	display Version information


Edit ~/.config/nwg-panel/drawer.css to your taste.