Merge pull request #54349 from ar1a/pb-capture
Pb cli and capture initialization
This commit is contained in:
commit
44cd0a3655
10
pkgs/tools/misc/capture/0001-eval-fix.patch
Normal file
10
pkgs/tools/misc/capture/0001-eval-fix.patch
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
diff --git a/src/capture.sh b/src/capture.sh
|
||||||
|
index a32b018..82d1f15 100755
|
||||||
|
--- a/src/capture.sh
|
||||||
|
+++ b/src/capture.sh
|
||||||
|
@@ -103,4 +103,4 @@ capture () {
|
||||||
|
|
||||||
|
|
||||||
|
# remove this line if you want to source this file instead
|
||||||
|
-eval " ${0##*/}" "$@"
|
||||||
|
+capture "$@"
|
22
pkgs/tools/misc/capture/0002-sane-defaults.patch
Normal file
22
pkgs/tools/misc/capture/0002-sane-defaults.patch
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
diff --git a/src/capture.sh b/src/capture.sh
|
||||||
|
index a32b018..42f3936 100755
|
||||||
|
--- a/src/capture.sh
|
||||||
|
+++ b/src/capture.sh
|
||||||
|
@@ -9,7 +9,7 @@ set -e
|
||||||
|
#
|
||||||
|
|
||||||
|
scale="-1:-1"
|
||||||
|
-fps="15"
|
||||||
|
+fps="30"
|
||||||
|
raw_video="-vf fps=$fps -c:v utvideo -f nut"
|
||||||
|
raw_video_container=".nut"
|
||||||
|
|
||||||
|
@@ -18,7 +18,7 @@ raw_video_container=".nut"
|
||||||
|
# https://stackoverflow.com/questions/41372045/vp9-encoding-limited-to-4-threads
|
||||||
|
webm_video="-pix_fmt yuv420p -c:v libvpx-vp9 -crf 25 -b:v 0 -f webm -tile-columns 6 -frame-parallel 1 -threads 8"
|
||||||
|
|
||||||
|
-tmpdir="/var/tmp"
|
||||||
|
+tmpdir="/tmp"
|
||||||
|
|
||||||
|
|
||||||
|
# capture_raw ./foo.nut
|
31
pkgs/tools/misc/capture/default.nix
Normal file
31
pkgs/tools/misc/capture/default.nix
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
{ stdenv, pkgs, slop, ffmpeg, fetchFromGitHub, makeWrapper}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "capture-${version}";
|
||||||
|
version = "1.0";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "buhman";
|
||||||
|
repo = "capture";
|
||||||
|
rev = "4be986f17462b8d520559429c74da6bf3a436259";
|
||||||
|
sha256 = "172y06vs993x5v78zwl81xma1gkvjq1ad9rvmf3a217fyxsz4nhh";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildInputs = [ makeWrapper ];
|
||||||
|
|
||||||
|
patches = [ ./0001-eval-fix.patch ./0002-sane-defaults.patch ];
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
install -Dm755 src/capture.sh $out/bin/capture
|
||||||
|
|
||||||
|
patchShebangs $out/bin/capture
|
||||||
|
wrapProgram $out/bin/capture \
|
||||||
|
--prefix PATH : '${stdenv.lib.makeBinPath [ slop ffmpeg ]}'
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "A no bullshit screen capture tool";
|
||||||
|
homepage = "https://github.com/buhman/capture";
|
||||||
|
maintainers = [ maintainers.ar1a ];
|
||||||
|
};
|
||||||
|
}
|
10
pkgs/tools/misc/pb_cli/0001-eval-fix.patch
Normal file
10
pkgs/tools/misc/pb_cli/0001-eval-fix.patch
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
diff --git a/src/pb.sh b/src/pb.sh
|
||||||
|
index be1e472..eb9e6f9 100755
|
||||||
|
--- a/src/pb.sh
|
||||||
|
+++ b/src/pb.sh
|
||||||
|
@@ -61,4 +61,4 @@ pb () {
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
-eval " ${0##*/}" "$@"
|
||||||
|
+pb "$@"
|
40
pkgs/tools/misc/pb_cli/default.nix
Normal file
40
pkgs/tools/misc/pb_cli/default.nix
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
{ screenshots ? true, video ? false, clipboard ? true
|
||||||
|
, stdenv, pkgs, jq, curl, fetchFromGitHub, makeWrapper, maim ? null, xclip ? null, capture ? null }:
|
||||||
|
|
||||||
|
assert screenshots -> maim != null;
|
||||||
|
assert video -> capture != null;
|
||||||
|
assert clipboard -> xclip != null;
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "pb_cli-${version}";
|
||||||
|
version = "1.0";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "ptpb";
|
||||||
|
repo = "pb_cli";
|
||||||
|
rev = "5242382b3d6b5c0ddaf6e4843a69746b40866e57";
|
||||||
|
sha256 = "0543x3377apinhxnsfq82zlp5sm8g1bf6hmsvvcwra5rsshv2ybk";
|
||||||
|
};
|
||||||
|
|
||||||
|
patches = [ ./0001-eval-fix.patch ];
|
||||||
|
|
||||||
|
buildInputs = [ makeWrapper ];
|
||||||
|
|
||||||
|
liveDeps = [ jq curl ] ++ stdenv.lib.optional screenshots maim
|
||||||
|
++ stdenv.lib.optional video capture
|
||||||
|
++ stdenv.lib.optional clipboard xclip;
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
install -Dm755 src/pb.sh $out/bin/pb
|
||||||
|
|
||||||
|
patchShebangs $out/bin/pb
|
||||||
|
wrapProgram $out/bin/pb \
|
||||||
|
--prefix PATH : '${stdenv.lib.makeBinPath liveDeps}'
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "A no bullshit ptpb client";
|
||||||
|
homepage = "https://github.com/ptpb/pb_cli";
|
||||||
|
maintainers = [ maintainers.ar1a ];
|
||||||
|
};
|
||||||
|
}
|
@ -18724,6 +18724,10 @@ in
|
|||||||
|
|
||||||
packet = callPackage ../development/tools/packet { };
|
packet = callPackage ../development/tools/packet { };
|
||||||
|
|
||||||
|
pb_cli = callPackage ../tools/misc/pb_cli {};
|
||||||
|
|
||||||
|
capture = callPackage ../tools/misc/capture {};
|
||||||
|
|
||||||
pbrt = callPackage ../applications/graphics/pbrt { };
|
pbrt = callPackage ../applications/graphics/pbrt { };
|
||||||
|
|
||||||
pcsxr = callPackage ../misc/emulators/pcsxr {
|
pcsxr = callPackage ../misc/emulators/pcsxr {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user