2018-03-20 21:08:16 +00:00
|
|
|
{ stdenv, fetchurl, pkgconfig, writeText, makeWrapper, libX11, ncurses, libXext
|
|
|
|
, libXft, fontconfig, dmenu, conf ? null, patches ? [], extraLibs ? []}:
|
2013-05-10 15:31:13 +01:00
|
|
|
|
|
|
|
with stdenv.lib;
|
2012-08-05 11:44:01 +01:00
|
|
|
|
2017-07-11 17:23:42 +01:00
|
|
|
let patches' = if patches == null then [] else patches;
|
2016-09-03 13:30:22 +01:00
|
|
|
in stdenv.mkDerivation rec {
|
2018-03-20 20:50:32 +00:00
|
|
|
name = "st-0.8.1";
|
2016-09-03 13:30:22 +01:00
|
|
|
|
2012-08-05 11:44:01 +01:00
|
|
|
src = fetchurl {
|
2018-04-11 14:09:51 +01:00
|
|
|
url = "https://dl.suckless.org/st/${name}.tar.gz";
|
2018-03-20 20:50:32 +00:00
|
|
|
sha256 = "09k94v3n20gg32xy7y68p96x9dq5msl80gknf9gbvlyjp3i0zyy4";
|
2012-08-05 11:44:01 +01:00
|
|
|
};
|
2013-05-10 15:31:13 +01:00
|
|
|
|
2018-03-15 13:06:40 +00:00
|
|
|
patches = patches';
|
2016-04-12 21:44:07 +01:00
|
|
|
|
2013-05-10 15:31:13 +01:00
|
|
|
configFile = optionalString (conf!=null) (writeText "config.def.h" conf);
|
|
|
|
preBuild = optionalString (conf!=null) "cp ${configFile} config.def.h";
|
|
|
|
|
2018-03-20 21:08:16 +00:00
|
|
|
nativeBuildInputs = [ pkgconfig makeWrapper ];
|
2017-09-05 22:26:13 +01:00
|
|
|
buildInputs = [ libX11 ncurses libXext libXft fontconfig ] ++ extraLibs;
|
2012-08-05 11:44:01 +01:00
|
|
|
|
|
|
|
installPhase = ''
|
|
|
|
TERMINFO=$out/share/terminfo make install PREFIX=$out
|
2018-03-20 21:08:16 +00:00
|
|
|
wrapProgram "$out/bin/st" --prefix PATH : "${dmenu}/bin"
|
2012-08-05 11:44:01 +01:00
|
|
|
'';
|
2016-09-03 13:30:22 +01:00
|
|
|
|
2012-08-05 11:44:01 +01:00
|
|
|
meta = {
|
2017-11-11 04:00:29 +00:00
|
|
|
homepage = https://st.suckless.org/;
|
|
|
|
description = "Simple Terminal for X from Suckless.org Community";
|
2017-07-11 17:25:18 +01:00
|
|
|
license = licenses.mit;
|
2016-09-03 13:30:22 +01:00
|
|
|
maintainers = with maintainers; [viric andsild];
|
2015-11-17 20:29:29 +00:00
|
|
|
platforms = platforms.linux;
|
2012-08-05 11:44:01 +01:00
|
|
|
};
|
|
|
|
}
|