tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
0
fork
atom
lol
0
fork
atom
overview
issues
pulls
pipelines
wayland window managers: orbment, sway, velox
tg(x)
10 years ago
e1bcc741
4f07c88d
+324
9 changed files
expand all
collapse all
unified
split
pkgs
applications
misc
dmenu
wayland.nix
st
wayland.nix
window-managers
orbment
default.nix
sway
default.nix
velox
default.nix
development
libraries
swc
default.nix
wlc
default.nix
wld
default.nix
top-level
all-packages.nix
+34
pkgs/applications/misc/dmenu/wayland.nix
reviewed
···
1
1
+
{stdenv, fetchurl #, libX11, libXinerama, enableXft, libXft, zlib
2
2
+
, swc, wld, wayland, libxkbcommon, pixman, fontconfig
3
3
+
}:
4
4
+
5
5
+
with stdenv.lib;
6
6
+
7
7
+
stdenv.mkDerivation rec {
8
8
+
name = "dmenu-wayland-${version}";
9
9
+
version = "git-2014-11-02";
10
10
+
rev = "6e08b77428cc3c406ed2e90d4cae6c41df76341e";
11
11
+
12
12
+
src = fetchurl {
13
13
+
url = "https://github.com/michaelforney/dmenu/archive/${rev}.tar.gz";
14
14
+
sha256 = "d0f73e442baf44a93a3b9d41a72e9cfa14f54af6049c90549f516722e3f88019";
15
15
+
};
16
16
+
17
17
+
buildInputs = [ swc wld wayland libxkbcommon pixman fontconfig ];
18
18
+
19
19
+
postPatch = ''
20
20
+
sed -ri -e 's!\<(dmenu|dmenu_path)\>!'"$out/bin"'/&!g' dmenu_run
21
21
+
'';
22
22
+
23
23
+
preConfigure = [
24
24
+
''sed -i "s@PREFIX = /usr/local@PREFIX = $out@g; s@/usr/share/swc@$(echo "$nativeBuildInputs" | grep -o '[^ ]*-swc-[^ ]*')/share/swc@g" config.mk''
25
25
+
];
26
26
+
27
27
+
meta = {
28
28
+
description = "a generic, highly customizable, and efficient menu for the X Window System";
29
29
+
homepage = http://tools.suckless.org/dmenu;
30
30
+
license = stdenv.lib.licenses.mit;
31
31
+
maintainers = with stdenv.lib.maintainers; [ ];
32
32
+
platforms = with stdenv.lib.platforms; all;
33
33
+
};
34
34
+
}
+34
pkgs/applications/misc/st/wayland.nix
reviewed
···
1
1
+
{ stdenv, fetchurl, pkgconfig, writeText
2
2
+
, ncurses, wayland, wld, libxkbcommon, fontconfig, pixman
3
3
+
, conf? null}:
4
4
+
5
5
+
with stdenv.lib;
6
6
+
7
7
+
stdenv.mkDerivation rec {
8
8
+
name = "st-wayland-${version}";
9
9
+
version = "git-2015-08-29";
10
10
+
rev = "61b47b76a09599c8093214e28c48938f5b424daa";
11
11
+
12
12
+
src = fetchurl {
13
13
+
url = "https://github.com/michaelforney/st/archive/${rev}.tar.gz";
14
14
+
sha256 = "7164da135f02405dba5ae3131dfd896e072df29ac6c0928f3b887beffb8a7d97";
15
15
+
};
16
16
+
17
17
+
configFile = optionalString (conf!=null) (writeText "config.def.h" conf);
18
18
+
preBuild = optionalString (conf!=null) "cp ${configFile} config.def.h";
19
19
+
20
20
+
buildInputs = [ pkgconfig ncurses wayland wld libxkbcommon fontconfig pixman ];
21
21
+
22
22
+
NIX_LDFLAGS = "-lfontconfig";
23
23
+
24
24
+
installPhase = ''
25
25
+
TERMINFO=$out/share/terminfo make install PREFIX=$out
26
26
+
'';
27
27
+
28
28
+
meta = {
29
29
+
homepage = http://st.suckless.org/;
30
30
+
license = stdenv.lib.licenses.mit;
31
31
+
maintainers = with maintainers; [ ];
32
32
+
platforms = with platforms; linux;
33
33
+
};
34
34
+
}
+57
pkgs/applications/window-managers/orbment/default.nix
reviewed
···
1
1
+
{ lib, stdenv, fetchurl, makeWrapper, cmake, pkgconfig
2
2
+
, wlc, dbus_libs, wayland, libxkbcommon, pixman, libinput, udev, zlib, libpng, libdrm, libX11
3
3
+
}:
4
4
+
5
5
+
stdenv.mkDerivation rec {
6
6
+
name = "orbment-${version}";
7
7
+
version = "git-2015-09-30";
8
8
+
repo = "https://github.com/Cloudef/orbment";
9
9
+
rev = "229a870dbbb9dbc66c137cf2747eab11acdf1a95";
10
10
+
11
11
+
chck_repo = "https://github.com/Cloudef/chck";
12
12
+
chck_rev = "6191a69572952291c137294317874c06c9c0d6a9";
13
13
+
inihck_repo = "https://github.com/Cloudef/inihck";
14
14
+
inihck_rev = "462cbd5fd67226714ac2bdfe4ceaec8e251b2d9c";
15
15
+
16
16
+
srcs = [
17
17
+
(fetchurl {
18
18
+
url = "${repo}/archive/${rev}.tar.gz";
19
19
+
sha256 = "7aaa0262d078adaf47abdf500b9ea581f6bec164c195a44a3c165a865414ca2c";
20
20
+
})
21
21
+
(fetchurl {
22
22
+
url = "${chck_repo}/archive/${chck_rev}.tar.gz";
23
23
+
sha256 = "26b4af1390bf67c674732cad69fc94fb027a3d269241d0bd862f42fb80bd5160";
24
24
+
})
25
25
+
(fetchurl {
26
26
+
url = "${inihck_repo}/archive/${inihck_rev}.tar.gz";
27
27
+
sha256 = "d21f2ac25eafed285614f5f0ef7a1014d629ba382f4e64bc89fe2c3e98c2777f";
28
28
+
})
29
29
+
];
30
30
+
31
31
+
sourceRoot = "orbment-${rev}";
32
32
+
postUnpack = ''
33
33
+
rm -rf orbment-${rev}/lib/chck orbment-${rev}/lib/inihck
34
34
+
ln -s ../../chck-${chck_rev} orbment-${rev}/lib/chck
35
35
+
ln -s ../../inihck-${inihck_rev} orbment-${rev}/lib/inihck
36
36
+
'';
37
37
+
38
38
+
nativeBuildInputs = [ cmake pkgconfig ];
39
39
+
40
40
+
buildInputs = [ makeWrapper wlc dbus_libs wayland libxkbcommon pixman libinput udev zlib libpng libX11 libdrm ];
41
41
+
makeFlags = "PREFIX=$(out)";
42
42
+
installPhase = "PREFIX=$out make install";
43
43
+
44
44
+
LD_LIBRARY_PATH = lib.makeLibraryPath [ libX11 libdrm dbus_libs ];
45
45
+
preFixup = ''
46
46
+
wrapProgram $out/bin/orbment \
47
47
+
--prefix LD_LIBRARY_PATH : "${LD_LIBRARY_PATH}";
48
48
+
'';
49
49
+
50
50
+
meta = {
51
51
+
description = "Modular Wayland compositor";
52
52
+
homepage = repo;
53
53
+
license = lib.licenses.mit;
54
54
+
platforms = lib.platforms.linux;
55
55
+
maintainers = with lib.maintainers; [ ];
56
56
+
};
57
57
+
}
+38
pkgs/applications/window-managers/sway/default.nix
reviewed
···
1
1
+
{ lib, stdenv, fetchurl, makeWrapper, cmake, pkgconfig
2
2
+
, wayland, wlc, libxkbcommon, pixman, fontconfig, pcre, json_c, asciidoc, libxslt, dbus_libs
3
3
+
}:
4
4
+
5
5
+
stdenv.mkDerivation rec {
6
6
+
name = "sway-${version}";
7
7
+
version = "git-2015-10-16";
8
8
+
9
9
+
src = fetchurl {
10
10
+
url = "https://github.com/SirCmpwn/sway/archive/16e904634c65128610537bed7fcb16ac3bb45165.tar.gz";
11
11
+
sha256 = "52d6c4b49fea69e2a2c1b44b858908b7736301bdb9ed483c294bc54bb40e872e";
12
12
+
};
13
13
+
14
14
+
nativeBuildInputs = [ cmake pkgconfig ];
15
15
+
16
16
+
buildInputs = [ makeWrapper wayland wlc libxkbcommon pixman fontconfig pcre json_c asciidoc libxslt dbus_libs ];
17
17
+
18
18
+
patchPhase = ''
19
19
+
sed -i s@/etc/sway@$out/etc/sway@g CMakeLists.txt;
20
20
+
'';
21
21
+
22
22
+
makeFlags = "PREFIX=$(out)";
23
23
+
installPhase = "PREFIX=$out make install";
24
24
+
25
25
+
LD_LIBRARY_PATH = lib.makeLibraryPath [ wlc dbus_libs ];
26
26
+
preFixup = ''
27
27
+
wrapProgram $out/bin/sway \
28
28
+
--prefix LD_LIBRARY_PATH : "${LD_LIBRARY_PATH}";
29
29
+
'';
30
30
+
31
31
+
meta = {
32
32
+
description = "i3-compatible window manager for Wayland";
33
33
+
homepage = "http://swaywm.org";
34
34
+
license = lib.licenses.mit;
35
35
+
platforms = lib.platforms.linux;
36
36
+
maintainers = with lib.maintainers; [ ];
37
37
+
};
38
38
+
}
+29
pkgs/applications/window-managers/velox/default.nix
reviewed
···
1
1
+
{ lib, stdenv, fetchurl, fetchFromGitHub, pkgconfig
2
2
+
, swc, libxkbcommon
3
3
+
, wld, wayland, pixman, fontconfig
4
4
+
}:
5
5
+
6
6
+
stdenv.mkDerivation rec {
7
7
+
name = "velox-${version}";
8
8
+
version = "git-2015-09-23";
9
9
+
10
10
+
src = fetchurl {
11
11
+
url = "https://github.com/michaelforney/velox/archive/499768b5834967727e3d91139b4013b6aca95762.tar.gz";
12
12
+
sha256 = "252959f0f0ff593c187449b61c234c214fdf321e3f4e8b5d9e3c2949d932a0a2";
13
13
+
};
14
14
+
15
15
+
nativeBuildInputs = [ pkgconfig ];
16
16
+
17
17
+
buildInputs = [ swc libxkbcommon wld wayland pixman fontconfig ];
18
18
+
19
19
+
makeFlags = "PREFIX=$(out)";
20
20
+
installPhase = "PREFIX=$out make install";
21
21
+
22
22
+
meta = {
23
23
+
description = "velox window manager";
24
24
+
homepage = "https://github.com/michaelforney/velox";
25
25
+
license = lib.licenses.mit;
26
26
+
platforms = lib.platforms.linux;
27
27
+
maintainers = with lib.maintainers; [ ];
28
28
+
};
29
29
+
}
+30
pkgs/development/libraries/swc/default.nix
reviewed
···
1
1
+
{ lib, stdenv, fetchurl, pkgconfig
2
2
+
, wld, wayland, xwayland, fontconfig, pixman, libdrm, libinput, libevdev, libxkbcommon, libxcb, xcbutilwm
3
3
+
}:
4
4
+
5
5
+
stdenv.mkDerivation rec {
6
6
+
name = "swc-${version}";
7
7
+
version = "git-2015-09-05";
8
8
+
repo = "https://github.com/michaelforney/swc";
9
9
+
rev = "0dff35ad9b80fc62e6b48417f78c24df6648c9d2";
10
10
+
11
11
+
src = fetchurl {
12
12
+
url = "${repo}/archive/${rev}.tar.gz";
13
13
+
sha256 = "7af5655b5bb5fe59bb8e6643e35f794419850463b1d7f44f29b45ab6aee01ae9";
14
14
+
};
15
15
+
16
16
+
nativeBuildInputs = [ pkgconfig ];
17
17
+
18
18
+
buildInputs = [ wld wayland xwayland fontconfig pixman libdrm libinput libevdev libxkbcommon libxcb xcbutilwm ];
19
19
+
20
20
+
makeFlags = "PREFIX=$(out)";
21
21
+
installPhase = "PREFIX=$out make install";
22
22
+
23
23
+
meta = {
24
24
+
description = "A library for making a simple Wayland compositor";
25
25
+
homepage = repo;
26
26
+
license = lib.licenses.mit;
27
27
+
platforms = lib.platforms.linux;
28
28
+
maintainers = with lib.maintainers; [ ];
29
29
+
};
30
30
+
}
+58
pkgs/development/libraries/wlc/default.nix
reviewed
···
1
1
+
{ lib, stdenv, fetchurl, cmake, pkgconfig
2
2
+
, glibc, wayland, pixman, libxkbcommon, libinput, libxcb, xcbutilwm, xcbutilimage, mesa, libdrm, udev, systemd, dbus_libs
3
3
+
, libpthreadstubs, libX11, libXau, libXdmcp, libXext, libXdamage, libxshmfence, libXxf86vm, linuxPackages_4_2
4
4
+
}:
5
5
+
6
6
+
stdenv.mkDerivation rec {
7
7
+
name = "wlc-${version}";
8
8
+
version = "git-2015-10-04";
9
9
+
repo = "https://github.com/Cloudef/wlc";
10
10
+
rev = "74d978cc54fd8256777c8d39327cb677523cddff";
11
11
+
12
12
+
chck_repo = "https://github.com/Cloudef/chck";
13
13
+
chck_rev = "6191a69572952291c137294317874c06c9c0d6a9";
14
14
+
15
15
+
srcs = [
16
16
+
(fetchurl {
17
17
+
url = "${repo}/archive/${rev}.tar.gz";
18
18
+
sha256 = "a3641e79252a140be089dd2e829b4d21a3b5ff10866951568d54bd4600597254";
19
19
+
})
20
20
+
(fetchurl {
21
21
+
url = "${chck_repo}/archive/${chck_rev}.tar.gz";
22
22
+
sha256 = "26b4af1390bf67c674732cad69fc94fb027a3d269241d0bd862f42fb80bd5160";
23
23
+
})
24
24
+
];
25
25
+
26
26
+
sourceRoot = "wlc-${rev}";
27
27
+
postUnpack = ''
28
28
+
rm -rf wlc-${rev}/lib/chck
29
29
+
ln -s ../../chck-${chck_rev} wlc-${rev}/lib/chck
30
30
+
'';
31
31
+
32
32
+
patchPhase = ''
33
33
+
( echo '#include <stdlib.h>';
34
34
+
echo '#include <libdrm/drm.h>';
35
35
+
cat src/platform/backend/drm.c
36
36
+
) >src/platform/backend/drm.c-fix;
37
37
+
mv src/platform/backend/drm.c-fix src/platform/backend/drm.c;
38
38
+
'';
39
39
+
40
40
+
nativeBuildInputs = [ cmake pkgconfig ];
41
41
+
42
42
+
buildInputs = [
43
43
+
wayland pixman libxkbcommon libinput libxcb xcbutilwm xcbutilimage mesa libdrm udev
44
44
+
libpthreadstubs libX11 libXau libXdmcp libXext libXdamage libxshmfence libXxf86vm
45
45
+
systemd dbus_libs
46
46
+
];
47
47
+
48
48
+
makeFlags = "PREFIX=$(out) -lchck";
49
49
+
installPhase = "PREFIX=$out make install";
50
50
+
51
51
+
meta = {
52
52
+
description = "A library for making a simple Wayland compositor";
53
53
+
homepage = repo;
54
54
+
license = lib.licenses.mit;
55
55
+
platforms = lib.platforms.linux;
56
56
+
maintainers = with lib.maintainers; [ ];
57
57
+
};
58
58
+
}
+30
pkgs/development/libraries/wld/default.nix
reviewed
···
1
1
+
{ lib, stdenv, fetchurl, pkgconfig
2
2
+
, wayland, fontconfig, pixman, freetype, libdrm
3
3
+
}:
4
4
+
5
5
+
stdenv.mkDerivation rec {
6
6
+
name = "wld-${version}";
7
7
+
version = "git-2015-09-01";
8
8
+
repo = "https://github.com/michaelforney/wld";
9
9
+
rev = "efe0a1ed1856a2e4a1893ed0f2d7dde43b5627f0";
10
10
+
11
11
+
src = fetchurl {
12
12
+
url = "${repo}/archive/${rev}.tar.gz";
13
13
+
sha256 = "09388f7828e18c75e7b8d41454903886a725d7a868f60e66c128bd7d2e953ee1";
14
14
+
};
15
15
+
16
16
+
nativeBuildInputs = [ pkgconfig ];
17
17
+
18
18
+
buildInputs = [ wayland fontconfig pixman freetype libdrm ];
19
19
+
20
20
+
makeFlags = "PREFIX=$(out)";
21
21
+
installPhase = "PREFIX=$out make install";
22
22
+
23
23
+
meta = {
24
24
+
description = "A primitive drawing library targeted at Wayland";
25
25
+
homepage = repo;
26
26
+
license = lib.licenses.mit;
27
27
+
platforms = lib.platforms.linux;
28
28
+
maintainers = with lib.maintainers; [ ];
29
29
+
};
30
30
+
}
+14
pkgs/top-level/all-packages.nix
reviewed
···
11146
11146
enableXft = true;
11147
11147
};
11148
11148
11149
11149
+
dmenu-wayland = callPackage ../applications/misc/dmenu/wayland.nix { };
11150
11150
+
11149
11151
dmenu2 = callPackage ../applications/misc/dmenu2 { };
11150
11152
11151
11153
dmtx = dmtx-utils;
···
11824
11826
hydrogen = callPackage ../applications/audio/hydrogen { };
11825
11827
11826
11828
spectrwm = callPackage ../applications/window-managers/spectrwm { };
11829
11829
+
11830
11830
+
wlc = callPackage ../development/libraries/wlc { };
11831
11831
+
orbment = callPackage ../applications/window-managers/orbment { };
11832
11832
+
sway = callPackage ../applications/window-managers/sway { };
11833
11833
+
11834
11834
+
swc = callPackage ../development/libraries/swc { };
11835
11835
+
wld = callPackage ../development/libraries/wld { };
11836
11836
+
velox = callPackage ../applications/window-managers/velox { };
11827
11837
11828
11838
i3 = callPackage ../applications/window-managers/i3 {
11829
11839
xcb-util-cursor = if stdenv.isDarwin then xcb-util-cursor-HEAD else xcb-util-cursor;
···
12787
12797
viber = callPackage ../applications/networking/instant-messengers/viber { };
12788
12798
12789
12799
st = callPackage ../applications/misc/st {
12800
12800
+
conf = config.st.conf or null;
12801
12801
+
};
12802
12802
+
12803
12803
+
st-wayland = callPackage ../applications/misc/st/wayland.nix {
12790
12804
conf = config.st.conf or null;
12791
12805
};
12792
12806