summaryrefslogtreecommitdiffstats
path: root/pkgs-temp
diff options
context:
space:
mode:
authorCole Mickens <cole.mickens@gmail.com>2019-06-07 22:42:10 -0700
committerCole Mickens <cole.mickens@gmail.com>2019-06-07 22:42:10 -0700
commit56b9368ea1301fa5488ad668f8044811208f39a3 (patch)
treee46e69272de560fd25620b133efa867e24cef659 /pkgs-temp
parent6765ff06c301fa857f1b55fca5069058b4312ead (diff)
updates
Diffstat (limited to 'pkgs-temp')
-rw-r--r--pkgs-temp/wlroots-0.5.0/default.nix83
-rw-r--r--pkgs-temp/wlroots-0.6.0/metadata.nix5
2 files changed, 83 insertions, 5 deletions
diff --git a/pkgs-temp/wlroots-0.5.0/default.nix b/pkgs-temp/wlroots-0.5.0/default.nix
new file mode 100644
index 0000000..d3b2d78
--- /dev/null
+++ b/pkgs-temp/wlroots-0.5.0/default.nix
@@ -0,0 +1,83 @@
+{ stdenv, fetchFromGitHub, fetchpatch, meson, ninja, pkgconfig
+, wayland, libGL, wayland-protocols, libinput, libxkbcommon, pixman
+, xcbutilwm, libX11, libcap, xcbutilimage, xcbutilerrors, mesa_noglu
+, libpng, ffmpeg_4
+}:
+
+let
+ pname = "wlroots";
+ version = "0.5.0";
+in stdenv.mkDerivation rec {
+ name = "${pname}-${version}";
+
+ src = fetchFromGitHub {
+ owner = "swaywm";
+ repo = "wlroots";
+ rev = version;
+ sha256 = "1phiidyddzgaxy4gbqwmykxn0y8za6y5mp66l9dpd9i6fml153yq";
+ };
+
+ # $out for the library, $bin for rootston, and $examples for the example
+ # programs (in examples) AND rootston
+ outputs = [ "out" "bin" "examples" ];
+
+ nativeBuildInputs = [ meson ninja pkgconfig ];
+
+ buildInputs = [
+ wayland libGL wayland-protocols libinput libxkbcommon pixman
+ xcbutilwm libX11 libcap xcbutilimage xcbutilerrors mesa_noglu
+ libpng ffmpeg_4
+ ];
+
+ mesonFlags = [
+ "-Dlibcap=enabled" "-Dlogind=enabled" "-Dxwayland=enabled" "-Dx11-backend=enabled"
+ "-Dxcb-icccm=enabled" "-Dxcb-errors=enabled"
+ ];
+
+ postPatch = ''
+ # It happens from time to time that the version wasn't updated:
+ sed -iE "s/version: '[0-9]\.[0-9]\.[0-9]'/version: '${version}.0'/" meson.build
+ '';
+
+ postInstall = ''
+ # Copy the library to $bin and $examples
+ for output in "$bin" "$examples"; do
+ mkdir -p $output/lib
+ cp -P libwlroots* $output/lib/
+ done
+ '';
+
+ postFixup = ''
+ # Install rootston (the reference compositor) to $bin and $examples (this
+ # has to be done after the fixup phase to prevent broken binaries):
+ for output in "$bin" "$examples"; do
+ mkdir -p $output/bin
+ cp rootston/rootston $output/bin/
+ patchelf \
+ --set-rpath "$(patchelf --print-rpath $output/bin/rootston | sed s,$out,$output,g)" \
+ $output/bin/rootston
+ mkdir $output/etc
+ cp ../rootston/rootston.ini.example $output/etc/rootston.ini
+ done
+ # Install ALL example programs to $examples:
+ # screencopy dmabuf-capture input-inhibitor layer-shell idle-inhibit idle
+ # screenshot output-layout multi-pointer rotation tablet touch pointer
+ # simple
+ mkdir -p $examples/bin
+ cd ./examples
+ for binary in $(find . -executable -type f -printf '%P\n' | grep -vE '\.so'); do
+ cp "$binary" "$examples/bin/wlroots-$binary"
+ patchelf \
+ --set-rpath "$(patchelf --print-rpath $output/bin/rootston | sed s,$out,$examples,g)" \
+ "$examples/bin/wlroots-$binary"
+ done
+ '';
+
+ meta = with stdenv.lib; {
+ description = "A modular Wayland compositor library";
+ inherit (src.meta) homepage;
+ license = licenses.mit;
+ platforms = platforms.linux;
+ maintainers = with maintainers; [ primeos ];
+ };
+}
diff --git a/pkgs-temp/wlroots-0.6.0/metadata.nix b/pkgs-temp/wlroots-0.6.0/metadata.nix
deleted file mode 100644
index 2637cfa..0000000
--- a/pkgs-temp/wlroots-0.6.0/metadata.nix
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- rev = "3dec88e4555ee5fd95ffd69133623816cb0c25c4";
- sha256 = "1hcbxvy3a47gy4c1lg8avql79ddchgv8px11w4s3d6dl6pzfc5km";
- revdate = "2019-06-02T13:30:47Z";
-}