mirror of
https://github.com/ilyakooo0/nixpkgs.git
synced 2024-11-15 13:37:21 +03:00
conky: add config options
This commit is contained in:
parent
b57ee8c331
commit
26d5d506c9
@ -1,5 +1,33 @@
|
||||
{ stdenv, fetchurl, pkgconfig, libxml2, curl, wirelesstools, glib, openssl
|
||||
, ncurses }:
|
||||
{ stdenv, fetchurl, pkgconfig
|
||||
|
||||
# dependencies
|
||||
, glib, ncurses
|
||||
|
||||
# optional features without extra dependencies
|
||||
, mpdSupport ? true
|
||||
|
||||
# optional features with extra dependencies
|
||||
, x11Support ? false, x11 ? null
|
||||
, xdamage ? false, libXdamage ? null
|
||||
, wireless ? false, wirelesstools ? null
|
||||
, luaSupport ? false, lua5 ? null
|
||||
|
||||
, rss ? false
|
||||
, weatherMetar ? false
|
||||
, weatherXoap ? false
|
||||
, curl ? null, libxml2 ? null
|
||||
}:
|
||||
|
||||
assert luaSupport -> lua5 != null;
|
||||
assert wireless -> wirelesstools != null;
|
||||
assert x11Support -> x11 != null;
|
||||
assert xdamage -> x11Support && libXdamage != null;
|
||||
|
||||
assert rss -> curl != null && libxml2 != null;
|
||||
assert weatherMetar -> curl != null;
|
||||
assert weatherXoap -> curl != null && libxml2 != null;
|
||||
|
||||
with stdenv.lib;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "conky-1.9.0";
|
||||
@ -9,17 +37,35 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "0vxvjmi3cdvnp994sv5zcdyncfn0mlxa71p2wm9zpyrmy58bbwds";
|
||||
};
|
||||
|
||||
patches = [ ./stdbool.patch ];
|
||||
buildInputs = [ pkgconfig glib ncurses ]
|
||||
++ optional luaSupport lua5
|
||||
++ optional wireless wirelesstools
|
||||
++ optional x11Support x11
|
||||
++ optional xdamage libXdamage
|
||||
|
||||
++ optionals rss [ curl libxml2 ]
|
||||
++ optional weatherMetar curl
|
||||
++ optionals weatherXoap [ curl libxml2 ]
|
||||
;
|
||||
|
||||
buildInputs = [ pkgconfig libxml2 curl wirelesstools glib openssl ncurses ];
|
||||
configureFlags =
|
||||
(map (x: "--disable-${x}") [ "x11" "xdamage" "own-window" "xft" "lua" ])
|
||||
++ (map (x: "--enable-${x}") [ "mpd" "double-buffer" "wlan" "rss"
|
||||
"weather-metar" "weather-xoap" ]);
|
||||
let flag = state: flags: if state then map (x: "--enable-${x}") flags
|
||||
else map (x: "--disable-${x}") flags;
|
||||
in flag mpdSupport [ "mpd" ]
|
||||
|
||||
++ flag luaSupport [ "lua" ]
|
||||
++ flag wireless [ "wlan" ]
|
||||
++ flag x11Support [ "x11" "xft" "argb" "double-buffer" "own-window" ] # conky won't compile without --enable-own-window
|
||||
++ flag xdamage [ "xdamage" ]
|
||||
|
||||
++ flag rss [ "rss" ]
|
||||
++ flag weatherMetar [ "weather-metar" ]
|
||||
++ flag weatherXoap [ "weather-xoap" ]
|
||||
;
|
||||
|
||||
meta = {
|
||||
homepage = http://conky.sourceforge.net/;
|
||||
description = "Conky is an advanced, highly configurable system monitor complied without X based on torsmo";
|
||||
description = "Conky is an advanced, highly configurable system monitor based on torsmo";
|
||||
maintainers = [ stdenv.lib.maintainers.guibert ];
|
||||
license = stdenv.lib.licenses.gpl3Plus;
|
||||
};
|
||||
|
@ -1,12 +0,0 @@
|
||||
diff --git a/src/conky.c b/src/conky.c
|
||||
index 5848b61..69a3d45 100644
|
||||
--- a/src/conky.c
|
||||
+++ b/src/conky.c
|
||||
@@ -34,6 +34,7 @@
|
||||
#include "common.h"
|
||||
#include "timed_thread.h"
|
||||
#include <stdarg.h>
|
||||
+#include <stdbool.h>
|
||||
#include <math.h>
|
||||
#include <time.h>
|
||||
#include <locale.h>
|
@ -6583,7 +6583,16 @@ let
|
||||
|
||||
cifs_utils = callPackage ../os-specific/linux/cifs-utils { };
|
||||
|
||||
conky = callPackage ../os-specific/linux/conky { };
|
||||
conky = callPackage ../os-specific/linux/conky {
|
||||
mpdSupport = config.conky.mpdSupport or true;
|
||||
x11Support = config.conky.x11Support or false;
|
||||
xdamage = config.conky.xdamage or false;
|
||||
wireless = config.conky.wireless or false;
|
||||
luaSupport = config.conky.luaSupport or false;
|
||||
rss = config.conky.rss or false;
|
||||
weatherMetar = config.conky.weatherMetar or false;
|
||||
weatherXoap = config.conky.weatherXoap or false;
|
||||
};
|
||||
|
||||
cpufrequtils = callPackage ../os-specific/linux/cpufrequtils { };
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user