62 lines
1.7 KiB
Nix
62 lines
1.7 KiB
Nix
{
|
|
description = "st terminal";
|
|
|
|
inputs.nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
|
inputs.flake-utils.url = "github:numtide/flake-utils";
|
|
|
|
outputs = { self, nixpkgs, flake-utils }:
|
|
flake-utils.lib.eachDefaultSystem (system:
|
|
let pkgs = nixpkgs.legacyPackages.${system};
|
|
in rec {
|
|
packages.st = pkgs.stdenv.mkDerivation {
|
|
pname = "st";
|
|
version = "ant";
|
|
|
|
src = ./.;
|
|
|
|
postPatch = pkgs.lib.optionalString pkgs.stdenv.isDarwin ''
|
|
substituteInPlace config.mk --replace "-lrt" ""
|
|
'';
|
|
|
|
strictDeps = true;
|
|
|
|
makeFlags = [ "PKG_CONFIG=${pkgs.stdenv.cc.targetPrefix}pkg-config" ];
|
|
|
|
nativeBuildInputs = with pkgs; [ pkg-config ncurses fontconfig freetype ];
|
|
buildInputs = with pkgs; [ libx11 libxft harfbuzz gd glib imlib2 ];
|
|
|
|
preInstall = ''
|
|
export TERMINFO=$out/share/terminfo
|
|
'';
|
|
|
|
installFlags = [ "PREFIX=$(out)" ];
|
|
|
|
passthru.tests.test = pkgs.nixosTests.terminal-emulators.st;
|
|
|
|
meta = with pkgs.lib; {
|
|
description = "st terminal";
|
|
license = licenses.mit;
|
|
maintainers = [ "ant" ];
|
|
platforms = platforms.unix;
|
|
};
|
|
};
|
|
|
|
apps.st = flake-utils.lib.mkApp {
|
|
drv = packages.st;
|
|
exePath = "/bin/st";
|
|
};
|
|
apps.default = apps.st;
|
|
packages.default = packages.st;
|
|
defaultApp = apps.st;
|
|
|
|
devShell = pkgs.mkShell {
|
|
inputsFrom = [ packages.st ];
|
|
packages = with pkgs; [
|
|
bear
|
|
clang-tools
|
|
gdb
|
|
];
|
|
};
|
|
|
|
});
|
|
}
|