diff options
Diffstat (limited to 'community/sensors-applet')
-rw-r--r-- | community/sensors-applet/PKGBUILD | 40 | ||||
-rw-r--r-- | community/sensors-applet/gtk38.patch | 127 | ||||
-rw-r--r-- | community/sensors-applet/sensors-applet.install | 12 |
3 files changed, 179 insertions, 0 deletions
diff --git a/community/sensors-applet/PKGBUILD b/community/sensors-applet/PKGBUILD new file mode 100644 index 000000000..1a62c5692 --- /dev/null +++ b/community/sensors-applet/PKGBUILD @@ -0,0 +1,40 @@ +# $Id: PKGBUILD 89360 2013-04-28 20:21:26Z bgyorgy $ +# Maintainer: Balló György <ballogyor+arch at gmail dot com> + +pkgname=sensors-applet +pkgver=3.0.0 +pkgrel=3 +pkgdesc="Applet for GNOME Panel to display readings from hardware sensors, including CPU temperature, fan speeds and voltage readings" +arch=('i686' 'x86_64') +url="http://sensors-applet.sourceforge.net/" +license=('GPL') +depends=('gnome-panel' 'libatasmart' 'lm_sensors' 'xdg-utils') +makedepends=('intltool' 'gnome-doc-utils') +optdepends=('hddtemp: get HDD temperatures' + 'udisks: get HDD temperatures') +options=('!libtool') +install=$pkgname.install +source=(http://downloads.sourceforge.net/sensors-applet/$pkgname-$pkgver.tar.gz + gtk38.patch) +md5sums=('425078fc1ff5a98af1547e039002a73f' + '7289cb0acd5c05daf824df6a90967240') + +build() { + cd "$srcdir/$pkgname-$pkgver" + + # Enable reprecations + sed -i '/CFLAGS+=/d' configure{,.ac} + + # Fix compatibility with GTK+ 3.8 + patch -Np1 -i "$srcdir/gtk38.patch" + + ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libexecdir=/usr/lib/$pkgname \ + --disable-static --disable-scrollkeeper --with-nvidia=no + make +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + + make DESTDIR="$pkgdir/" install +} diff --git a/community/sensors-applet/gtk38.patch b/community/sensors-applet/gtk38.patch new file mode 100644 index 000000000..530d756a3 --- /dev/null +++ b/community/sensors-applet/gtk38.patch @@ -0,0 +1,127 @@ +diff -Naur sensors-applet-3.0.0.orig/sensors-applet/sensors-applet.c sensors-applet-3.0.0/sensors-applet/sensors-applet.c +--- sensors-applet-3.0.0.orig/sensors-applet/sensors-applet.c 2011-11-03 12:33:36.000000000 +0100 ++++ sensors-applet-3.0.0/sensors-applet/sensors-applet.c 2013-04-28 20:08:31.002620583 +0200 +@@ -641,122 +641,8 @@ + /* get the first active sensor */ + first_sensor = (ActiveSensor *)sensors_applet->active_sensors->data; + +- switch (display_mode) { +- case DISPLAY_VALUE: +- gtk_widget_size_request(GTK_WIDGET(first_sensor->value), +- &req); +- value_width = req.width + COLUMN_SPACING; +- value_height = req.height + ROW_SPACING; ++ num_sensors_per_group = 1; + +- /* make sure all widths and heights are non zero, +- * otherwise will get a divide by zero exception below +- * - is a non critical error since can happen when +- * elements first added to list, so simply return - is +- * not a programming error */ +- if (value_width == 0 && value_height == 0) { +- return; +- } +- +- num_sensors_per_group = (sensors_applet->size / +- (horizontal ? value_height : +- value_width)); +- break; +- +- case DISPLAY_LABEL_WITH_VALUE: +- /* even though we end up packing the event boxes into the +- * panel, these dont give back request sizes, so need to ask +- * widgets directly */ +- gtk_widget_size_request(GTK_WIDGET(first_sensor->value), +- &req); +- value_width = req.width + COLUMN_SPACING; +- value_height = req.height + ROW_SPACING; +- +- gtk_widget_size_request(GTK_WIDGET(first_sensor->label), +- &req); +- label_width = req.width + COLUMN_SPACING; +- label_height = req.height + ROW_SPACING; +- +- /* make sure all widths and heights are non zero, otherwise +- * will get a divide by zero exception below +- * - is a non critical error since can happen when +- * elements first added to list, so simply return - is +- * not a programming error */ +- if (!(label_width && label_height && +- value_width && value_height)) { +- return; +- } +- +- switch (layout_mode) { +- case VALUE_BESIDE_LABEL: +- num_sensors_per_group = (sensors_applet->size / +- (horizontal ? MAX(label_height, value_height) : +- (label_width + value_width))); +- break; +- case VALUE_BELOW_LABEL: +- num_sensors_per_group = (sensors_applet->size / +- (horizontal ? (label_height + value_height) : +- MAX(label_width, value_width))); +- +- +- break; +- } +- break; +- +- case DISPLAY_ICON_WITH_VALUE: +- gtk_widget_size_request(GTK_WIDGET(first_sensor->value), +- &req); +- value_width = req.width + COLUMN_SPACING; +- value_height = req.height + ROW_SPACING; +- +- gtk_widget_size_request(GTK_WIDGET(first_sensor->icon), +- &req); +- icon_width = req.width + COLUMN_SPACING; +- icon_height = req.height + ROW_SPACING; +- +- //watch out if num_sensors_per_group is correctly computed +- //while icon_height is 0 +- if (!(icon_width && +- value_width && value_height)) { +- return; +- } +- +- +- switch (layout_mode) { +- case VALUE_BESIDE_LABEL: +- num_sensors_per_group = (sensors_applet->size / +- (horizontal ? MAX(icon_height, value_height) : +- (icon_width + value_width))); +- break; +- case VALUE_BELOW_LABEL: +- num_sensors_per_group = (sensors_applet->size / +- (horizontal ? (icon_height + value_height) : +- MAX(icon_width, value_width))); +- +- +- break; +- } +- break; +- +- case DISPLAY_ICON: +- gtk_widget_size_request(GTK_WIDGET(first_sensor->icon), +- &req); +- icon_width = req.width + COLUMN_SPACING; +- icon_height = req.height + ROW_SPACING; +- if (!(icon_width && icon_height)) { +- return; +- } +- +- num_sensors_per_group = (sensors_applet->size / +- (horizontal ? icon_height : +- icon_width)); +- break; +- +- case DISPLAY_GRAPH: +- /* only show graphs in a line like System Monitor +- * applet */ +- num_sensors_per_group = 1; +- break; +- } + /* ensure always atleast 1 sensor per group */ + if (num_sensors_per_group < 1) { + /* force a better layout */ diff --git a/community/sensors-applet/sensors-applet.install b/community/sensors-applet/sensors-applet.install new file mode 100644 index 000000000..a23a623cc --- /dev/null +++ b/community/sensors-applet/sensors-applet.install @@ -0,0 +1,12 @@ +post_install() { + xdg-icon-resource forceupdate +} + +post_upgrade() { + post_install $1 +} + + +post_remove() { + post_install $1 +} |