wio

a wayland wm stylised after plan9 rio - forked from git.sr.ht/~srcmpwn/wio
git clone git://src.gearsix.net/wio
Log | Files | Refs | Atom | Submodules | README | LICENSE

README.md (3795B)


      1 # wio
      2 
      3 Wio is a Wayland compositor for Linux & FreeBSD which has a similar look & feel
      4 to plan9's rio.
      5 
      6 This software is incomplete. Notably missing is a Rio-esque FUSE filesystem and
      7 Rio's built-in command line (we depend on an external, tty-style terminal
      8 emulator).
      9 
     10 ## Installation
     11 
     12 To build and install wio:
     13 
     14     git clone https://github.com/swaywm/wlroots.git subprojects/wlroots
     15     meson build
     16     cd build
     17     ninja install
     18 
     19 ## Basic principles
     20 
     21 Wio uses [wlroots](https://github.com/swaywm/wlroots) to run a simple Wayland
     22 compositor. Right clicking (and holding) outside of a window will bring up the
     23 menu. Drag the mouse to the command you'd like to execute and release the mouse.
     24 
     25 - **New**: Opens a new window. Click and hold the mouse, then drag, to define
     26     the placement for the new window.
     27 - **Resize**: Resizes a window. Click the window to resize, then click and drag
     28     somewhere else to define the new placement.
     29 - **Move**: Moves a window. Click and drag a window to move it.
     30 - **Delete**: Deletes a window. Click the window you want to close.
     31 - **Hide**: Hides a window. Open the menu again to show the window.
     32 
     33 Each window runs [cage](https://github.com/Hjdskes/cage) by default, and
     34 instructs cage to run a terminal emulator
     35 ([alacritty](https://github.com/jwilm/alacritty) by default). This effectively
     36 gives each window its own private Wayland compositor. If you want to run a
     37 graphical application, simply run the command from the terminal and cage will
     38 display it full-screen within its own window.
     39 
     40 To access Wio's own Wayland compositor directly (for example, to take
     41 screenshots with [grim](https://wayland.emersion.fr/grim)), set
     42 `WAYLAND_DISPLAY=wayland-0` or similar. Note, however, that the only shell for
     43 application windows which is supported directly by Wio is xdg-shell.
     44 
     45 ## Usage
     46 
     47 Some minor customization options are available by passing command line arguments
     48 to Wio:
     49 
     50     wio [-c <cage>] [-t <terminal>] [-o <output config>...]
     51 
     52 - **-c &lt;cage&gt;**: specifies the `cage` command to run new windows in
     53 - **-t &lt;term&gt;**: specifies the terminal command to run new windows in
     54 
     55 For the authentic rio experience, try the alacritty config in `contrib/`.
     56 
     57 ### Output configuration
     58 
     59 Wio supports multihead configurations and HiDPI displays. In order to take
     60 advantage of this, you must pass some output configurations on the command line.
     61 You can specify the following options, in this order:
     62 
     63 - Output name (`weston-info` can list output names & modes)
     64 - X & Y coordinates in the multihead layout
     65 - Width & height of the desired mode
     66 - Scale factor
     67 - Transform
     68 
     69 Each property should be separated by a colon. Use -1 for X & Y to have Wio
     70 automatically place the display, and 0 to have Wio select a mode or scale factor
     71 automatically. You may omit any of these properties, but must include any
     72 property which comes before the ones you're trying to set.
     73 
     74 For example, to specify the X & Y coordinates of output `HDMI-A-1`, try the
     75 following: `-o HDMI-A-1:1920:0`. If you also want to set its mode to 720p, use
     76 `-o HDMI-A-1:1920:0:1280:720`. If you don't care about setting the mode but want
     77 to flip it, use `-o HDMI-A-1:-1:-1:0:0:0:flipped`.
     78 
     79 Available transforms are:
     80 
     81 - `normal`
     82 - `90`
     83 - `180`
     84 - `270`
     85 - `flipped`
     86 - `flipped-90`
     87 - `flipped-180`
     88 - `flipped-270`
     89 
     90 ### Environment
     91 
     92 Wio recognizes the following environment variables for basic keyboard
     93 configuration:
     94 
     95 - `XKB_DEFAULT_RULES`
     96 - `XKB_DEFAULT_MODEL`
     97 - `XKB_DEFAULT_LAYOUT`
     98 - `XKB_DEFAULT_VARIANT`
     99 - `XKB_DEFAULT_OPTIONS`
    100 
    101 Read `xkeyboard-config(7)` for details.
    102 
    103 ## Patches, bugs, etc
    104 
    105 Patches, questions, feedback, and general discussions to the mailing list:
    106 [~sircmpwn/wio@lists.sr.ht](https://lists.sr.ht/~sircmpwn/wio).
    107 
    108 Tickets on the [bug tracker](https://todo.sr.ht/~sircmpwn/wio).