diff options
-rw-r--r-- | .SRCINFO | 24 | ||||
-rw-r--r-- | PKGBUILD | 51 | ||||
-rw-r--r-- | remove-unused-variables.patch | 39 | ||||
-rw-r--r-- | replace-deprecated-gtk.patch | 168 | ||||
-rw-r--r-- | xsensors.changelog | 11 |
5 files changed, 293 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..7e420235b67d --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,24 @@ +pkgbase = xsensors-gtk2 + pkgdesc = X11 interface to lm_sensors (gtk2) + pkgver = 0.70 + pkgrel = 7 + url = http://www.linuxhardware.org/xsensors/ + changelog = xsensors.changelog + arch = x86_64 + arch = i686 + license = GPL + makedepends = imagemagick + makedepends = gendesk + depends = gtk2 + depends = lm_sensors + provides = xsensors=0.70 + conflicts = xsensors + source = http://www.linuxhardware.org/xsensors/xsensors-0.70.tar.gz + source = remove-unused-variables.patch + source = replace-deprecated-gtk.patch + sha512sums = 34f038b192f3cecb2e7587e19c4837b795a2705e6d0e9ea2bd3ead6d3259a1dded364fcfc70fa5e37d64f32c879e1dd9c6e43dcf32fa9aeb73ee5cc49bf290a4 + sha512sums = ec81d48f16fb0b9b425247e3e2c56ef6f71acb8da5228bc72438aa33da86e2beb8d4d88c6e1ea8aa95e9db4b19a8939410b6693be61eba4e469686e20108adff + sha512sums = 008ea330c74b7f373cd637e3fc57e8ce2a9e8271f517d569be251c86f87593db081622b6df3f2970b741f407d51f4f348fe0dc102927d7289b0309288c3a70f6 + +pkgname = xsensors-gtk2 + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..d1106fa294c4 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,51 @@ +# Maintainer : Brian Bidulock <bidulock@openss7.org> +# Contributor : Laurent Carlier <lordheavym@gmail.com> +# Contributor: Ray Rashif <schivmeister@gmail.com> +# Contributor: Corrado Primier <bardo@aur.archlinux.org> +# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com> + +pkgname=xsensors-gtk2 +_pkgname=xsensors +pkgver=0.70 +pkgrel=7 +pkgdesc="X11 interface to lm_sensors (gtk2)" +arch=('x86_64' 'i686') +url="http://www.linuxhardware.org/xsensors/" +license=('GPL') +depends=('gtk2' 'lm_sensors') +provides=("$_pkgname=$pkgver") +conflicts=("$_pkgname") +makedepends=('imagemagick' 'gendesk') +changelog=$_pkgname.changelog +source=(http://www.linuxhardware.org/xsensors/$_pkgname-$pkgver.tar.gz + remove-unused-variables.patch + replace-deprecated-gtk.patch) +sha512sums=('34f038b192f3cecb2e7587e19c4837b795a2705e6d0e9ea2bd3ead6d3259a1dded364fcfc70fa5e37d64f32c879e1dd9c6e43dcf32fa9aeb73ee5cc49bf290a4' + 'ec81d48f16fb0b9b425247e3e2c56ef6f71acb8da5228bc72438aa33da86e2beb8d4d88c6e1ea8aa95e9db4b19a8939410b6693be61eba4e469686e20108adff' + '008ea330c74b7f373cd637e3fc57e8ce2a9e8271f517d569be251c86f87593db081622b6df3f2970b741f407d51f4f348fe0dc102927d7289b0309288c3a70f6') + +build() { + cd "$srcdir" + gendesk -n --pkgname "$_pkgname" --genericname="Hardware Monitor" \ + --comment="View hardware health" --categories="System;Monitor;GTK" + + cd "$_pkgname-$pkgver" + + # patches from debian + patch -Np1 -i ${srcdir}/remove-unused-variables.patch + patch -Np1 -i ${srcdir}/replace-deprecated-gtk.patch + + ./configure --prefix=/usr + make +} + +package() { + cd ${srcdir}/$_pkgname-$pkgver + + make DESTDIR="${pkgdir}" install + + convert +set date:create +set date:modify "$pkgdir/usr/share/pixmaps/xsensors/default.xpm" \ + "$pkgdir/usr/share/pixmaps/xsensors.png" + install -Dm644 "$srcdir/xsensors.desktop" \ + "$pkgdir/usr/share/applications/xsensors.desktop" +} diff --git a/remove-unused-variables.patch b/remove-unused-variables.patch new file mode 100644 index 000000000000..7da97a0e56e8 --- /dev/null +++ b/remove-unused-variables.patch @@ -0,0 +1,39 @@ +Author: Nanley Chery <nanleychery@gmail.com> +From: Jean Delvare <khali@linux-fr.org> +Subject: Remove declared, but unused variables +Bug-Debian: http://bugs.debian.org/625435 +--- +--- a/src/gui.c ++++ b/src/gui.c +@@ -257,10 +257,9 @@ + + /* Start the sensor info update timer. */ + gint start_timer( GtkWidget *widget, gpointer data ) { +- gint timer; + + /* Setup timer for updates. */ +- timer = g_timeout_add( update_time * 1000, ++ g_timeout_add( update_time * 1000, + (GtkFunction) update_sensor_data, + (gpointer) data ); + +@@ -287,7 +286,7 @@ + + /* feature data */ + updates *head = NULL; +- updates *current = NULL, *prev = NULL; ++ updates *current = NULL; + + const sensors_feature *feature; + +@@ -347,10 +346,8 @@ + new_node->pbar = featpbar; + + if ( head == NULL ) { +- prev = head; + head = current = new_node; + } else { +- prev = current; + current = current->next = new_node; + } + diff --git a/replace-deprecated-gtk.patch b/replace-deprecated-gtk.patch new file mode 100644 index 000000000000..fed4c7dc4c95 --- /dev/null +++ b/replace-deprecated-gtk.patch @@ -0,0 +1,168 @@ +Author: Nanley Chery <nanleychery@gmail.com> +Subject: Update deprecated gtk casts and replace deprecated function calls with their analogous cairo counterparts. +Bug-Debian: http://bugs.debian.org/622005 +Bug-Debian: http://bugs.debian.org/610321 +--- +--- a/src/gui.c ++++ b/src/gui.c +@@ -27,10 +27,10 @@ + GtkWidget *mainwindow = NULL; + + GdkColor colorWhite = { 0, 0xFFFF, 0xFFFF, 0xFFFF }; +- +-GdkColormap *cmap = NULL; + +-GdkPixmap *theme = NULL; ++GdkPixbuf *theme = NULL; ++ ++cairo_surface_t *surface = NULL; + + /* Destroy the main window. */ + gint destroy_gui( GtkWidget *widget, gpointer data ) { +@@ -76,17 +76,16 @@ + } + } + +-static void draw_digits( GtkWidget *widget, const gchar *digits, int highLow ) ++static void draw_digits( GtkWidget *widget, cairo_t *cr, const gchar *digits, int highLow ) + { + const gchar *digit = digits; + int pos = 0, x = 0, y = 0, w = 0; + + while ( *digit ) { + get_pm_location( *digit, &x, &y, &w ); +- gdk_draw_drawable( widget->window, +- widget->style->fg_gc[ GTK_WIDGET_STATE +- (widget) ], theme, x, y + highLow, +- pos, 0, w, 30 ); ++ cairo_set_source_surface (cr, surface, pos-x, 0-(y + highLow)); ++ cairo_rectangle(cr, pos, 0, w, 30); ++ cairo_fill(cr); + pos += w; + digit++; + } +@@ -102,6 +101,8 @@ + + gchar result[7]; + ++ cairo_t *cr = gdk_cairo_create(widget->window); ++ + #ifdef DEBUG_XSENSORS + printf( "area.width = %d, area.height = %d\n", event->area.width, + event->area.height ); +@@ -117,13 +118,11 @@ + + /* Display the digits */ + if ( g_snprintf( result, 6, "%5.0f", current->curvalue ) >= 0 ) +- draw_digits( widget, result, highLow ); ++ draw_digits( widget, cr, result, highLow ); + + /* Display RPM */ +- gdk_draw_drawable( widget->window, +- widget->style->fg_gc[ GTK_WIDGET_STATE +- (widget) ], theme, 0, 120 + highLow, +- 90, 0, 57, 30 ); ++ cairo_set_source_surface (cr, surface, 90-0, 0-(120 + highLow)); ++ cairo_rectangle(cr, 90, 0, 57, 30); + break; + case TEMP: + if ( current->curvalue > current->curmax ) +@@ -134,17 +133,15 @@ + + /* Display the digits */ + if ( g_snprintf( result, 7, "%6.1f", current->curvalue ) >= 0 ) +- draw_digits( widget, result, highLow ); ++ draw_digits( widget, cr, result, highLow ); + + /* Display degree symbol */ + if ( tf == FALSE ) + x = 0; + else + x = 57; +- gdk_draw_drawable( widget->window, +- widget->style->fg_gc[ GTK_WIDGET_STATE +- (widget) ], theme, x, 60 + highLow, +- 96, 0, 57, 30 ); ++ cairo_set_source_surface (cr, surface, 96-x, 0-(60 + highLow)); ++ cairo_rectangle(cr, 96, 0, 57, 30); + + break; + case VOLT: +@@ -154,20 +151,17 @@ + + /* Display the digits */ + if ( g_snprintf( result, 7, "%6.2f", current->curvalue ) >= 0 ) +- draw_digits( widget, result, highLow ); ++ draw_digits( widget, cr, result, highLow ); + + /* Display V */ +- gdk_draw_drawable( widget->window, +- widget->style->fg_gc[ GTK_WIDGET_STATE +- (widget) ], theme, 114, 60 + highLow, +- 96, 0, 57, 30 ); +- +- ++ cairo_set_source_surface (cr, surface, 96-114, 0-(60 + highLow)); ++ cairo_rectangle(cr, 96, 0, 57, 30); + break; + default: + break; + } +- ++ cairo_fill(cr); ++ cairo_destroy(cr); + return TRUE; + } + +@@ -260,7 +254,7 @@ + + /* Setup timer for updates. */ + g_timeout_add( update_time * 1000, +- (GtkFunction) update_sensor_data, ++ (GSourceFunc) update_sensor_data, + (gpointer) data ); + + return SUCCESS; +@@ -460,8 +454,6 @@ + g_signal_connect( G_OBJECT (mainwindow), "delete_event", + G_CALLBACK (destroy_gui), NULL ); + +- /* Graphics needed for drawing info. */ +- cmap = gtk_widget_get_colormap( mainwindow ); + + /* Set up the image file used for displaying characters. */ + if ( imagefile == NULL ) { +@@ -481,12 +473,10 @@ + "Image file not found in either location! Exiting!\n" ); + exit( 1 ); + } else { +- theme = gdk_pixmap_colormap_create_from_xpm( NULL, cmap, +- NULL, NULL, "./images/default.xpm" ); ++ theme = gdk_pixbuf_new_from_file("./images/default.xpm", NULL ); + } + } else { +- theme = gdk_pixmap_colormap_create_from_xpm( NULL, cmap, +- NULL, NULL, imagefile ); ++ theme = gdk_pixbuf_new_from_file(imagefile, NULL ); + } + } else { + if ( stat( imagefile, &sbuf ) != 0 ) { +@@ -495,11 +485,15 @@ + "Image file not found in specified location! Exiting!\n" ); + exit( 1 ); + } else { +- theme = gdk_pixmap_colormap_create_from_xpm( NULL, cmap, +- NULL, NULL, imagefile ); ++ theme = gdk_pixbuf_new_from_file(imagefile, NULL ); + } + } +- ++ surface = cairo_image_surface_create_for_data(gdk_pixbuf_get_pixels(theme), ++ CAIRO_FORMAT_RGB24, ++ gdk_pixbuf_get_width(theme), ++ gdk_pixbuf_get_height(theme), ++ gdk_pixbuf_get_rowstride(theme)); ++ + /* Create notebook for sensors. */ + notebook = gtk_notebook_new( ); + gtk_widget_modify_bg( notebook, GTK_STATE_NORMAL, &colorWhite ); diff --git a/xsensors.changelog b/xsensors.changelog new file mode 100644 index 000000000000..e0c2227ca771 --- /dev/null +++ b/xsensors.changelog @@ -0,0 +1,11 @@ +2010-07-16 Laurent Carlier <lcarlier@aur.archlinux.org> + + * Long overdue update to 0.70 + +2007-12-02 Corrado Primier <bardo@aur.archlinux.org> + + * Recompiled with xsensors-0.60-libsensors-3.patch, necessary to work + with lm_sensors 3 + * Added xsensors-0.60-gui-segfault.patch by DaNiMoTh, which fixes a + segmentation fault + * Cosmetic changes to PKGBUILD |