i3-layout-manager: init at unstable-2019-06-19

Simple script which is a wrapper for i3's layout persist functionality[1] that
automates the manual editing of the exported layout JSON.

[1] https://i3wm.org/docs/layout-saving.html
This commit is contained in:
Maximilian Bosch 2019-06-24 00:58:53 +02:00
parent ac28607a03
commit d2adb05aa6
No known key found for this signature in database
GPG key ID: 091DBF4D1FC46B8E
2 changed files with 41 additions and 0 deletions

View file

@ -0,0 +1,39 @@
{ stdenv, fetchFromGitHub, vim, makeWrapper, jq, rofi, xrandr, xdotool, i3, gawk, libnotify }:
let
path = stdenv.lib.makeBinPath [ vim jq rofi xrandr xdotool i3 gawk libnotify ];
in
stdenv.mkDerivation rec {
pname = "i3-layout-manager";
version = "unstable-2019-06-19";
src = fetchFromGitHub {
owner = "klaxalk";
repo = pname;
rev = "80ade872bfd70d9c6039024097ceb8c852a2816a";
sha256 = "02xhyd737qwni628mjzr9i5v2kga5cq4k8m77bxm1p6kkj84nlmg";
};
nativeBuildInputs = [ makeWrapper ];
dontBuild = true;
installPhase = ''
runHook preInstall
install -D layout_manager.sh $out/bin/layout_manager
wrapProgram $out/bin/layout_manager \
--prefix PATH : "${path}"
runHook postInstall
'';
meta = with stdenv.lib; {
homepage = https://github.com/klaxalk/i3-layout-manager;
description = "Saving, loading and managing layouts for i3wm.";
license = licenses.mit;
platforms = platforms.linux;
maintainers = with maintainers; [ ma27 ];
};
}

View file

@ -18430,6 +18430,8 @@ in
i3-easyfocus = callPackage ../applications/window-managers/i3/easyfocus.nix { };
i3-layout-manager = callPackage ../applications/window-managers/i3/layout-manager.nix { };
i3blocks = callPackage ../applications/window-managers/i3/blocks.nix { };
i3blocks-gaps = callPackage ../applications/window-managers/i3/blocks-gaps.nix { };