diff --git a/pkgs/tools/misc/3mux/default.nix b/pkgs/tools/misc/3mux/default.nix index 3c51210edc7..4b5db58c640 100644 --- a/pkgs/tools/misc/3mux/default.nix +++ b/pkgs/tools/misc/3mux/default.nix @@ -1,24 +1,38 @@ -{ lib, buildGoModule, fetchFromGitHub }: +{ lib, buildGoModule, fetchFromGitHub, makeWrapper }: buildGoModule rec { pname = "3mux"; - version = "1.0.1"; + version = "1.1.0"; src = fetchFromGitHub { owner = "aaronjanse"; repo = pname; rev = "v${version}"; - sha256 = "sha256-auEMG3txO2JS/2dMFBtEujv9s5I0A80Vwts5kXjH600="; + sha256 = "sha256-QT4QXTlJf2NfTqXE4GF759EoW6Ri12lxDyodyEFc+ag="; }; - vendorSha256 = "sha256-rcbnyScD2GU1DLY6dTEPgFNXZfgkxXPn5lt6HRqa0d8="; + nativeBuildInputs = [ makeWrapper ]; + + vendorSha256 = "sha256-tbziQZIA1+b+ZtvA/865c8YQxn+r8HQy6Pqaac2kwcU="; + + # This is a package used for internally testing 3mux. It's meant for + # use by 3mux maintainers/contributors only. + excludedPackages = [ "fuzz" ]; + + # 3mux needs to have itself in the path so users can run `3mux detach`. + # This ensures that, while inside 3mux, the binary in the path is the + # same version as the 3mux hosting the session. This also allows users + # to use 3mux via `nix run nixpkgs#_3mux` (otherwise they'd get "command + # not found"). + postInstall = '' + wrapProgram $out/bin/3mux --prefix PATH : $out/bin + ''; meta = with lib; { description = "Terminal multiplexer inspired by i3"; longDescription = '' - 3mux is a terminal multiplexer with out-of-the-box support for search, - mouse-controlled scrollback, and i3-like keybindings. Imagine tmux with a - smaller learning curve and more sane defaults. + Terminal multiplexer with out-of-the-box support for search, + mouse-controlled scrollback, and i3-like keybindings ''; homepage = "https://github.com/aaronjanse/3mux"; license = licenses.mit;