Update nixpkgs and add broot overlay
broot 1.14.0 does not build on non-Linux, so 1.14.1 is in as a hotfix.
This commit is contained in:
parent
322923829c
commit
2a76dc2039
5 changed files with 123 additions and 34 deletions
71
overlay.nix
71
overlay.nix
|
@ -12,12 +12,83 @@ let
|
|||
overlay-imported = final: prev: {
|
||||
rnix-lsp = inputs.rnix-lsp.defaultPackage."${prev.system}";
|
||||
};
|
||||
|
||||
overlay-versioning = final: prev: {
|
||||
broot = (with final; rustPlatform.buildRustPackage rec {
|
||||
pname = "broot";
|
||||
version = "1.14.1";
|
||||
|
||||
src = fetchCrate {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-6t2yJM3LAG1LY5MAXg/7lwmufEEO8dqOZJgQXICmLf8=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-NsKiTsdfC1UPTLKBibVGXSx5wZubAMgIWLiEMzR5p6g=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
installShellFiles
|
||||
makeWrapper
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = with final; [ libgit2 oniguruma xorg.libxcb ] ++ lib.optionals stdenv.isDarwin (with final; [
|
||||
libiconv
|
||||
darwin.apple_sdk.frameworks.Security
|
||||
zlib
|
||||
]);
|
||||
|
||||
RUSTONIG_SYSTEM_LIBONIG = true;
|
||||
|
||||
postPatch = ''
|
||||
# Fill the version stub in the man page. We can't fill the date
|
||||
# stub reproducibly.
|
||||
substitute man/page man/broot.1 \
|
||||
--replace "#version" "${version}"
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
# Do not nag users about installing shell integration, since
|
||||
# it is impure.
|
||||
wrapProgram $out/bin/broot \
|
||||
--set BR_INSTALL no
|
||||
# Install shell function for bash.
|
||||
$out/bin/broot --print-shell-function bash > br.bash
|
||||
install -Dm0444 -t $out/etc/profile.d br.bash
|
||||
# Install shell function for zsh.
|
||||
$out/bin/broot --print-shell-function zsh > br.zsh
|
||||
install -Dm0444 br.zsh $out/share/zsh/site-functions/br
|
||||
# Install shell function for fish
|
||||
$out/bin/broot --print-shell-function fish > br.fish
|
||||
install -Dm0444 -t $out/share/fish/vendor_functions.d br.fish
|
||||
# install shell completion files
|
||||
OUT_DIR=$releaseDir/build/broot-*/out
|
||||
installShellCompletion --bash $OUT_DIR/{br,broot}.bash
|
||||
installShellCompletion --fish $OUT_DIR/{br,broot}.fish
|
||||
installShellCompletion --zsh $OUT_DIR/{_br,_broot}
|
||||
installManPage man/broot.1
|
||||
'';
|
||||
|
||||
doInstallCheck = true;
|
||||
installCheckPhase = ''
|
||||
$out/bin/broot --version | grep "${version}"
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "An interactive tree view, a fuzzy search, a balanced BFS descent and customizable commands";
|
||||
homepage = "https://dystroy.org/broot/";
|
||||
changelog = "https://github.com/Canop/broot/releases/tag/v${version}";
|
||||
maintainers = with maintainers; [ dywedir ];
|
||||
license = with licenses; [ mit ];
|
||||
};
|
||||
});
|
||||
};
|
||||
in
|
||||
[
|
||||
(import ./overlays/openrazer)
|
||||
overlay-unstable
|
||||
overlay-needs-unstable
|
||||
overlay-imported
|
||||
overlay-versioning
|
||||
nur.overlay
|
||||
|
||||
# Bug fixes
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue