mirror of
https://github.com/ilyakooo0/nixpkgs.git
synced 2024-09-22 04:57:56 +03:00
Merge pull request #162121 from ghostbuster91/init/tmux-thumbs
This commit is contained in:
commit
d9b51276a5
@ -4502,6 +4502,12 @@
|
|||||||
githubId = 3217744;
|
githubId = 3217744;
|
||||||
name = "Peter Ferenczy";
|
name = "Peter Ferenczy";
|
||||||
};
|
};
|
||||||
|
ghostbuster91 = {
|
||||||
|
name = "Kasper Kondzielski";
|
||||||
|
email = "kghost0@gmail.com";
|
||||||
|
github = "ghostbuster91";
|
||||||
|
githubId = 5662622;
|
||||||
|
};
|
||||||
ghuntley = {
|
ghuntley = {
|
||||||
email = "ghuntley@ghuntley.com";
|
email = "ghuntley@ghuntley.com";
|
||||||
github = "ghuntley";
|
github = "ghuntley";
|
||||||
|
@ -556,6 +556,10 @@ in rec {
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
tmux-thumbs = pkgs.callPackage ./tmux-thumbs {
|
||||||
|
inherit mkTmuxPlugin;
|
||||||
|
};
|
||||||
|
|
||||||
urlview = mkTmuxPlugin {
|
urlview = mkTmuxPlugin {
|
||||||
pluginName = "urlview";
|
pluginName = "urlview";
|
||||||
version = "unstable-2016-01-06";
|
version = "unstable-2016-01-06";
|
||||||
|
29
pkgs/misc/tmux-plugins/tmux-thumbs/default.nix
Normal file
29
pkgs/misc/tmux-plugins/tmux-thumbs/default.nix
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
{ lib, mkTmuxPlugin, fetchFromGitHub, thumbs, substituteAll }:
|
||||||
|
|
||||||
|
mkTmuxPlugin rec {
|
||||||
|
pluginName = "tmux-thumbs";
|
||||||
|
version = "0.7.1";
|
||||||
|
rtpFilePath = "tmux-thumbs.tmux";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "fcsonline";
|
||||||
|
repo = pluginName;
|
||||||
|
rev = version;
|
||||||
|
sha256 = "sha256-PH1nscmVhxJFupS7dlbOb+qEwG/Pa/2P6XFIbR/cfaQ=";
|
||||||
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
(substituteAll {
|
||||||
|
src = ./fix.patch;
|
||||||
|
tmuxThumbsDir = "${thumbs}/bin";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
homepage = "https://github.com/fcsonline/tmux-thumbs";
|
||||||
|
description = "A lightning fast version of tmux-fingers written in Rust for copy pasting with vimium/vimperator like hints.";
|
||||||
|
license = licenses.mit;
|
||||||
|
platforms = platforms.unix;
|
||||||
|
maintainers = with maintainers; [ ghostbuster91 ];
|
||||||
|
};
|
||||||
|
}
|
45
pkgs/misc/tmux-plugins/tmux-thumbs/fix.patch
Normal file
45
pkgs/misc/tmux-plugins/tmux-thumbs/fix.patch
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
diff --git a/tmux-thumbs.sh b/tmux-thumbs.sh
|
||||||
|
index 34dd528..8c05d54 100755
|
||||||
|
--- a/tmux-thumbs.sh
|
||||||
|
+++ b/tmux-thumbs.sh
|
||||||
|
@@ -1,22 +1,8 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
set -Eeu -o pipefail
|
||||||
|
|
||||||
|
-VERSION=$(grep 'version =' Cargo.toml | grep -oe "[0-9]\+.[0-9]\+.[0-9]\+")
|
||||||
|
-
|
||||||
|
# Setup env variables to be compatible with compiled and bundled installations
|
||||||
|
CURRENT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||||
|
-RELEASE_DIR="${CURRENT_DIR}/target/release"
|
||||||
|
-
|
||||||
|
-THUMBS_BINARY="${RELEASE_DIR}/thumbs"
|
||||||
|
-TMUX_THUMBS_BINARY="${RELEASE_DIR}/tmux-thumbs"
|
||||||
|
-
|
||||||
|
-if [ ! -f "$THUMBS_BINARY" ]; then
|
||||||
|
- tmux split-window "cd ${CURRENT_DIR} && bash ./tmux-thumbs-install.sh"
|
||||||
|
- exit
|
||||||
|
-elif [[ $(${THUMBS_BINARY} --version) != "thumbs ${VERSION}" ]]; then
|
||||||
|
- tmux split-window "cd ${CURRENT_DIR} && bash ./tmux-thumbs-install.sh update"
|
||||||
|
- exit
|
||||||
|
-fi
|
||||||
|
|
||||||
|
function get-opt-value() {
|
||||||
|
tmux show -vg "@thumbs-${1}" 2> /dev/null
|
||||||
|
@@ -36,7 +22,7 @@ function get-opt-arg() {
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
-PARAMS=(--dir "${CURRENT_DIR}")
|
||||||
|
+PARAMS=(--dir @tmuxThumbsDir@)
|
||||||
|
|
||||||
|
function add-param() {
|
||||||
|
local type opt arg
|
||||||
|
@@ -51,4 +37,4 @@ add-param upcase-command string
|
||||||
|
add-param multi-command string
|
||||||
|
add-param osc52 boolean
|
||||||
|
|
||||||
|
-"${TMUX_THUMBS_BINARY}" "${PARAMS[@]}" || true
|
||||||
|
+@tmuxThumbsDir@/tmux-thumbs "${PARAMS[@]}" || true
|
||||||
|
|
||||||
|
|
||||||
|
|
23
pkgs/tools/misc/thumbs/default.nix
Normal file
23
pkgs/tools/misc/thumbs/default.nix
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
{ lib, rustPlatform, fetchFromGitHub }:
|
||||||
|
|
||||||
|
rustPlatform.buildRustPackage rec {
|
||||||
|
pname = "thumbs";
|
||||||
|
version = "0.7.1";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "fcsonline";
|
||||||
|
repo = "tmux-thumbs";
|
||||||
|
rev = version;
|
||||||
|
sha256 = "sha256-PH1nscmVhxJFupS7dlbOb+qEwG/Pa/2P6XFIbR/cfaQ=";
|
||||||
|
};
|
||||||
|
|
||||||
|
cargoSha256 = "sha256-6htKiXMMyYRFefJzvDnmdx3CJ3XL8zONhGlV2wcbr9g=";
|
||||||
|
|
||||||
|
cargoPatches = [ ./fix.patch ];
|
||||||
|
meta = with lib; {
|
||||||
|
homepage = "https://github.com/fcsonline/tmux-thumbs";
|
||||||
|
description = "A lightning fast version copy/pasting like vimium/vimperator";
|
||||||
|
license = licenses.mit;
|
||||||
|
maintainers = with maintainers; [ ghostbuster91 ];
|
||||||
|
};
|
||||||
|
}
|
13
pkgs/tools/misc/thumbs/fix.patch
Normal file
13
pkgs/tools/misc/thumbs/fix.patch
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
diff --git a/src/swapper.rs b/src/swapper.rs
|
||||||
|
index 6cf1e89..bcb0969 100644
|
||||||
|
--- a/src/swapper.rs
|
||||||
|
+++ b/src/swapper.rs
|
||||||
|
@@ -215,7 +215,7 @@ impl<'a> Swapper<'a> {
|
||||||
|
};
|
||||||
|
|
||||||
|
let pane_command = format!(
|
||||||
|
- "tmux capture-pane -t {active_pane_id} -p{scroll_params} | tail -n {height} | {dir}/target/release/thumbs -f '%U:%H' -t {tmp} {args}; tmux swap-pane -t {active_pane_id}; {zoom_command} tmux wait-for -S {signal}",
|
||||||
|
+ "tmux capture-pane -t {active_pane_id} -p{scroll_params} | tail -n {height} | {dir}/thumbs -f '%U:%H' -t {tmp} {args}; tmux swap-pane -t {active_pane_id}; {zoom_command} tmux wait-for -S {signal}",
|
||||||
|
active_pane_id = active_pane_id,
|
||||||
|
scroll_params = scroll_params,
|
||||||
|
height = self.active_pane_height.unwrap_or(i32::MAX),
|
@ -1146,6 +1146,8 @@ with pkgs;
|
|||||||
|
|
||||||
tfk8s = callPackage ../tools/misc/tfk8s { };
|
tfk8s = callPackage ../tools/misc/tfk8s { };
|
||||||
|
|
||||||
|
thumbs = callPackage ../tools/misc/thumbs { };
|
||||||
|
|
||||||
tnat64 = callPackage ../tools/networking/tnat64 { };
|
tnat64 = callPackage ../tools/networking/tnat64 { };
|
||||||
|
|
||||||
topicctl = callPackage ../tools/misc/topicctl { };
|
topicctl = callPackage ../tools/misc/topicctl { };
|
||||||
|
Loading…
Reference in New Issue
Block a user