forked from NotAShelf/beer
nix: load terminfo in the devshell and complete the package build
Signed-off-by: NotAShelf <raf@notashelf.dev> Change-Id: I9d341443399d553c197f56bf66a578426a6a6964
This commit is contained in:
parent
7254cbf381
commit
8486c343d7
3 changed files with 51 additions and 12 deletions
|
|
@ -8,6 +8,7 @@
|
|||
taplo,
|
||||
cargo-deny,
|
||||
pkg-config,
|
||||
ncurses,
|
||||
wayland,
|
||||
wayland-protocols,
|
||||
wayland-scanner,
|
||||
|
|
@ -17,7 +18,7 @@
|
|||
harfbuzz,
|
||||
}:
|
||||
mkShell {
|
||||
name = "rust";
|
||||
name = "beer-dev";
|
||||
|
||||
strictDeps = true;
|
||||
nativeBuildInputs = [
|
||||
|
|
@ -25,19 +26,11 @@ mkShell {
|
|||
rustc
|
||||
clippy
|
||||
rustfmt
|
||||
rustc
|
||||
cargo
|
||||
|
||||
# Tools
|
||||
rustfmt
|
||||
clippy
|
||||
cargo
|
||||
taplo
|
||||
|
||||
# LSP
|
||||
rust-analyzer
|
||||
cargo-deny
|
||||
pkg-config
|
||||
ncurses # tic, to compile the terminfo entry
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
|
|
@ -49,4 +42,14 @@ mkShell {
|
|||
fontconfig
|
||||
harfbuzz
|
||||
];
|
||||
|
||||
# Compile the beer terminfo into a project-local database and put it ahead of
|
||||
# the system one, so TERM=beer resolves inside the shell (and for the shell
|
||||
# beer spawns, which inherits this env). The trailing ':' keeps the system
|
||||
# database on the search path.
|
||||
shellHook = ''
|
||||
if tic -x -o "$PWD/.terminfo" terminfo/beer.info 2>/dev/null; then
|
||||
export TERMINFO_DIRS="$PWD/.terminfo:"
|
||||
fi
|
||||
'';
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue