{ungoogled-,}chromium,chromedriver: 130.0.6723.58 -> 130.0.6723.69 (#351519)
[NixPkgs.git] / pkgs / servers / monitoring / lcdproc / default.nix
blob7570428d7f3ec395e36d7cf866ccc673390b8465
1 { lib
2 , stdenv
3 , fetchFromGitHub
4 , fetchpatch
5 , autoreconfHook
6 , makeWrapper
7 , pkg-config
8 , doxygen
9 , freetype
10 , libX11
11 , libftdi
12 , libusb-compat-0_1
13 , libusb1
14 , ncurses
15 , perl
18 stdenv.mkDerivation rec {
19   pname = "lcdproc";
20   version = "0.5.9";
22   src = fetchFromGitHub {
23     owner = "lcdproc";
24     repo = "lcdproc";
25     rev = "v${version}";
26     sha256 = "1r885zv1gsh88j43x6fvzbdgfkh712a227d369h4fdcbnnfd0kpm";
27   };
29   patches = [
30     ./hardcode_mtab.patch
32     # Pull upstream fix for -fno-common toolchains:
33     #   https://github.com/lcdproc/lcdproc/pull/148
34     (fetchpatch {
35       name = "fno-common.patch";
36       url = "https://github.com/lcdproc/lcdproc/commit/fda5302878692da933dc03cd011f8ddffefa07a4.patch";
37       sha256 = "0ld6p1r4rjsnjr63afw3lp5lx25jxjs07lsp9yc3q96r91r835cy";
38     })
39   ];
41   # we don't need to see the GPL every time we launch lcdd in the foreground
42   postPatch = ''
43     substituteInPlace server/main.c \
44       --replace 'output_GPL_notice();' '// output_GPL_notice();'
45   '';
47   configureFlags = [
48     "--enable-lcdproc-menus"
49     "--enable-drivers=all"
50     "--with-pidfile-dir=/run"
51   ];
53   buildInputs = [ freetype libX11 libftdi libusb-compat-0_1 libusb1 ncurses ];
55   nativeBuildInputs = [ autoreconfHook doxygen makeWrapper pkg-config ];
57   # In 0.5.9: gcc: error: libbignum.a: No such file or directory
58   enableParallelBuilding = false;
60   postFixup = ''
61     for f in $out/bin/*.pl ; do
62       substituteInPlace $f \
63         --replace /usr/bin/perl ${lib.getBin perl}/bin/perl
64     done
66     # NixOS will not use this file anyway but at least we can now execute LCDd
67     substituteInPlace $out/etc/LCDd.conf \
68       --replace server/drivers/ $out/lib/lcdproc/
69   '';
71   meta = with lib; {
72     description = "Client/server suite for controlling a wide variety of LCD devices";
73     homepage = "https://lcdproc.org/";
74     license = licenses.gpl2Plus;
75     maintainers = with maintainers; [ peterhoeg ];
76     platforms = platforms.unix;
77     # never built on aarch64-darwin since first introduction in nixpkgs
78     broken = stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64;
79   };