@@ -0,0 +1,57 @@
1+{ stdenv, fetchgit
2+, meson
3+, ninja
4+, pkg-config
5+, alacritty
6+, cage
7+, cairo
8+, libxkbcommon
9+, udev
10+, wayland
11+, wayland-protocols
12+, wlroots
13+, xwayland
14+, makeWrapper
15+}:
16+
17+stdenv.mkDerivation rec {
18+ pname = "wio";
19+ version = "unstable-2020-11-02";
20+
21+ src = fetchgit {
22+ url = "https://git.sr.ht/~sircmpwn/wio";
23+ rev = "31b742e473b15a2087be740d1de28bc2afd47a4d";
24+ sha256 = "1vpvlahv6dmr7vfb11p5cc5ds2y2vfvcb877nkqx18yin6pg357l";
25+ };
26+
27+ nativeBuildInputs = [ meson ninja pkg-config makeWrapper ];
28+ buildInputs = [
29+ cairo
30+ libxkbcommon
31+ udev
32+ wayland
33+ wayland-protocols
34+ wlroots
35+ xwayland
36+ ];
37+
38+ postInstall = ''
39+ wrapProgram $out/bin/wio \
40+ --prefix PATH ":" "${stdenv.lib.makeBinPath [ alacritty cage ]}"
41+ '';
42+
43+ meta = with stdenv.lib; {
44+ description = "That Plan 9 feel, for Wayland";
45+ longDescription = ''
46+ Wio is a Wayland compositor for Linux and FreeBSD which has a similar look
47+ and feel to plan9's rio.
48+ '';
49+ homepage = "https://wio-project.org/";
50+ license = licenses.mit;
51+ platforms = with platforms; linux;
52+ maintainers = with maintainers; [ AndersonTorres ];
53+ };
54+
55+ passthru.providedSessions = [ "wio" ];
56+}
57+# TODO: factor Linux-specific options