Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / by-name / di / dialog / package.nix
blob23f75bb1c994ff3fd63b15467b5c431c97b6e166
1 { lib
2 , stdenv
3 , fetchurl
4 , libtool
5 , ncurses
6 , enableShared ? !stdenv.isDarwin && !stdenv.hostPlatform.isStatic
7 , unicodeSupport ? true
8 , withLibrary ? true
9 }:
11 assert unicodeSupport -> ncurses.unicodeSupport;
12 stdenv.mkDerivation (finalAttrs: {
13   pname = "dialog";
14   version = "1.3-20231002";
16   src = fetchurl {
17     url = "https://invisible-island.net/archives/dialog/dialog-${finalAttrs.version}.tgz";
18     hash = "sha256-MVZAqwcZIl1cvKsTBYXAXweR/PBzBypf6UeZaaorgzs=";
19   };
21   nativeBuildInputs = lib.optionals withLibrary [
22     libtool
23   ];
25   buildInputs = [
26     ncurses
27   ];
29   strictDeps = true;
31   configureFlags = [
32     "--disable-rpath-hacks"
33     "--${if withLibrary then "with" else "without"}-libtool"
34     "--with-libtool-opts=${lib.optionalString enableShared "-shared"}"
35     "--with-ncurses${lib.optionalString unicodeSupport "w"}"
36   ];
38   installTargets = [
39     "install${lib.optionalString withLibrary "-full"}"
40   ];
42   meta = {
43     homepage = "https://invisible-island.net/dialog/dialog.html";
44     description = "Display dialog boxes from shell";
45     license = lib.licenses.lgpl21Plus;
46     mainProgram = "dialog";
47     maintainers = with lib.maintainers; [ AndersonTorres spacefrogg ];
48     inherit (ncurses.meta) platforms;
49   };