summary refs log tree commit diff stats
path: root/plugins/sysinfo
diff options
context:
space:
mode:
authorBerke Viktor <bviktor@hexchat.org>2012-10-21 07:15:48 +0200
committerBerke Viktor <bviktor@hexchat.org>2012-10-21 07:15:48 +0200
commitbc57507a4ceee92050a5eb8ac17dfd8b5d264b7a (patch)
tree9d353a8ab23d1116a8de0c38927493b2afc66882 /plugins/sysinfo
parent187351fa61e0ec9e8fe396de7a1d72a3a67d328f (diff)
Add Arch patches to SysInfo-Unix and rebrand it
Diffstat (limited to 'plugins/sysinfo')
-rw-r--r--plugins/sysinfo/parse.c2
-rw-r--r--plugins/sysinfo/parse.h1
-rw-r--r--plugins/sysinfo/xsys-makefile3
-rw-r--r--plugins/sysinfo/xsys.c133
4 files changed, 10 insertions, 129 deletions
diff --git a/plugins/sysinfo/parse.c b/plugins/sysinfo/parse.c
index d55142a1..075f3f31 100644
--- a/plugins/sysinfo/parse.c
+++ b/plugins/sysinfo/parse.c
@@ -415,6 +415,8 @@ int xs_parse_distro(char *name)
 		fgets(buffer, bsize, fp);
 	else if((fp = fopen("/etc/turbolinux-release", "r")) != NULL)
 		fgets(buffer, bsize, fp);
+	else if((fp = fopen("/etc/arch-release", "r")) != NULL)
+		snprintf(buffer, bsize, "ArchLinux");
 	else
 		snprintf(buffer, bsize, "Unknown Distro");
 	if(fp != NULL) fclose(fp);
diff --git a/plugins/sysinfo/parse.h b/plugins/sysinfo/parse.h
index 154fa8c4..eb7a1362 100644
--- a/plugins/sysinfo/parse.h
+++ b/plugins/sysinfo/parse.h
@@ -33,7 +33,6 @@ int xs_parse_meminfo(unsigned long long *mem_tot, unsigned long long *mem_free,
 int xs_parse_video(char *vid_card);
 int xs_parse_agpbridge(char *agp_bridge);
 int xs_parse_ether(char *ethernet_card);
-int xs_parse_xmms_info(char **title, unsigned int *songtime, unsigned int *playtime);
 int xs_parse_distro(char *name);
 int xs_parse_hwmon_chip(char *chip);
 int xs_parse_hwmon_temp(char *temp, unsigned int *sensor);
diff --git a/plugins/sysinfo/xsys-makefile b/plugins/sysinfo/xsys-makefile
index aeb28a99..8b51a53d 100644
--- a/plugins/sysinfo/xsys-makefile
+++ b/plugins/sysinfo/xsys-makefile
@@ -10,7 +10,6 @@ VER_MINOR = 2
 VER_PATCH = 0
 CC = gcc
 CFLAGS += -O2 -Wall -fPIC
-CFLAGS += $(shell pkg-config dbus-1 --cflags) $(shell pkg-config glib-2.0 --cflags)
 CFLAGS += -DVER_MINOR=$(VER_MINOR) -DVER_MAJOR=$(VER_MAJOR) -DVER_PATCH=$(VER_PATCH) \
           -DVER_STRING=\"$(VER_MAJOR).$(VER_MINOR).$(VER_PATCH)\" -DPCIIDS=\"$(PCIIDS)\" $(BUTTON)
 LDFLAGS = $(CFLAGS) -shared
@@ -20,7 +19,7 @@ OBJECTS = xsys.o parse.o pci.o match.o hwmon.o
 ALL : $(LIBRARY)
 
 $(LIBRARY) : $(OBJECTS)
-	$(CC) $(LDFLAGS) -o $(LIBRARY) $(OBJECTS) -lpci $(shell pkg-config dbus-1 --libs) $(shell pkg-config glib-2.0 --libs) -laudclient
+	$(CC) $(LDFLAGS) -o $(LIBRARY) $(OBJECTS) -lpci
 
 xsys.o : xsys.c
 parse.o : parse.c
diff --git a/plugins/sysinfo/xsys.c b/plugins/sysinfo/xsys.c
index 933ab7a6..531c9233 100644
--- a/plugins/sysinfo/xsys.c
+++ b/plugins/sysinfo/xsys.c
@@ -28,24 +28,19 @@
 #include "parse.h"
 #include "match.h"
 #include "xsys.h"
-#include <audacious/dbus.h>
-#include <audacious/audctrl.h>
 
 static xchat_plugin *ph;
 
+static char name[] = "SysInfo";
+static char desc[] = "Display info about your hardware and OS";
 static char format[bsize] = "%B%1%B[%2]";
-static char playing[42] = "now_playing";
 unsigned int percentages = 1;
-static unsigned int action = 0;
 
 static void load_config();
 static void save_config();
-static gboolean dbus_init(void);
 
 static int format_cb		(char *word[], char *word_eol[], void *userdata);
-static int playing_cb		(char *word[], char *word_eol[], void *userdata);
 static int percentages_cb	(char *word[], char *word_eol[], void *userdata);
-static int action_cb		(char *word[], char *word_eol[], void *userdata);
 static int sysinfo_cb		(char *word[], char *word_eol[], void *userdata);
 static int xsys_cb		(char *word[], char *word_eol[], void *userdata);
 static int cpuinfo_cb		(char *word[], char *word_eol[], void *userdata);
@@ -62,22 +57,17 @@ static int distro_cb		(char *word[], char *word_eol[], void *userdata);
 #if 0
 static int hwmon_cb		(char *word[], char *word_eol[], void *userdata);
 #endif
-static int np_cb		(char *word[], char *word_eol[], void *userdata);
-static DBusGProxy *dbus_proxy = NULL;
-static DBusGConnection *connection = NULL;
 
 int xchat_plugin_init(xchat_plugin *plugin_handle, char **plugin_name,
                       char **plugin_desc, char **plugin_version, char *arg)
 {
 	ph = plugin_handle;
-	*plugin_name    = "X-Sys_2";
-	*plugin_desc    = "A sysinfo/audacious plugin";
+	*plugin_name    = name;
+	*plugin_desc    = desc;
 	*plugin_version = VER_STRING;
 
 	xchat_hook_command(ph, "XSYS2FORMAT",XCHAT_PRI_NORM, format_cb,    NULL, NULL);
-	xchat_hook_command(ph, "PLAYING",    XCHAT_PRI_NORM, playing_cb,   NULL, NULL);
 	xchat_hook_command(ph, "PERCENTAGES",XCHAT_PRI_NORM, percentages_cb,   NULL, NULL);
-	xchat_hook_command(ph, "NPACTION",   XCHAT_PRI_NORM, action_cb,    NULL, NULL);
 	xchat_hook_command(ph, "SYSINFO",    XCHAT_PRI_NORM, sysinfo_cb,   NULL, (void *) 0);
 	xchat_hook_command(ph, "ESYSINFO",   XCHAT_PRI_NORM, sysinfo_cb,   NULL, (void *) 1);
 	xchat_hook_command(ph, "XSYS",       XCHAT_PRI_NORM, xsys_cb,      NULL, (void *) 0);
@@ -108,25 +98,13 @@ int xchat_plugin_init(xchat_plugin *plugin_handle, char **plugin_name,
 	xchat_hook_command(ph, "HWMON",      XCHAT_PRI_NORM, hwmon_cb,     NULL, (void *) 0);
 	xchat_hook_command(ph, "EHWMON",     XCHAT_PRI_NORM, hwmon_cb,     NULL, (void *) 1);
 #endif
-	if (dbus_init())
-	{
-		xchat_hook_command(ph, "NP",         XCHAT_PRI_NORM, np_cb,        NULL, (void *) 0);
-		xchat_hook_command(ph, "ENP",        XCHAT_PRI_NORM, np_cb,        NULL, (void *) 1);
-		xchat_printf(ph, "D-Bus MPRIS support initialized", VER_STRING);
-	}
-	
 	load_config();
 
-	xchat_printf(ph, "X-Sys %s Loaded Succesfully", VER_STRING);
+	xchat_printf (ph, "%s plugin loaded\n", name);
 	
 	return 1;
 }
 
-static void xchat_plugin_deinit()
-{
-	/* blahblahblah */
-}
-
 static void save_config()
 {
 	FILE *fp;
@@ -139,9 +117,7 @@ static void save_config()
 		return;
 	}
 	fprintf(fp, "format: %s\n", format);
-	fprintf(fp, "playing: %s\n", playing);
 	fprintf(fp, "percentages: %i\n", percentages);
-	fprintf(fp, "action: %i\n", action);
 	fclose(fp);
 	return;
 }
@@ -158,30 +134,11 @@ static void load_config()
 	while(fgets(buffer, bsize, fp) != NULL)
 	{
 		find_match_char(buffer, "format", format);
-		find_match_char(buffer, "playing", playing);
 		find_match_int(buffer, "percentages", &percentages);
-		find_match_int(buffer, "action", &action);
 	}
 	fclose(fp);
 }
 
-static gboolean dbus_init(void)
-{
-        GError *error = NULL;
-
-        connection = dbus_g_bus_get(DBUS_BUS_SESSION, &error);
-        if (connection == NULL)
-                return FALSE;
-
-        dbus_proxy = dbus_g_proxy_new_for_name(connection, AUDACIOUS_DBUS_SERVICE,
-                                                           AUDACIOUS_DBUS_PATH,
-                                                           AUDACIOUS_DBUS_INTERFACE);
-        if (dbus_proxy == NULL)
-                return FALSE;
-
-        return TRUE;
-}
-
 static int format_cb(char *word[], char *word_eol[], void *userdata)
 {
 	if(*(word[2]) == '\0')
@@ -194,18 +151,6 @@ static int format_cb(char *word[], char *word_eol[], void *userdata)
 	return XCHAT_EAT_ALL;
 }
 
-static int playing_cb(char *word[], char *word_eol[], void *userdata)
-{
-	if(*(word[2]) == '\0')
-		xchat_printf(ph, "Current playing string:\n%s", playing);
-	else
-	{
-		strncpy(playing, word_eol[2], 42);
-		save_config();
-	}
-	return XCHAT_EAT_ALL;
-}
-
 static int percentages_cb(char *word[], char *word_eol[], void *userdata)
 {
 	if(*(word[2]) == '\0')
@@ -221,21 +166,6 @@ static int percentages_cb(char *word[], char *word_eol[], void *userdata)
 	return XCHAT_EAT_ALL;
 }
 
-static int action_cb(char *word[], char *word_eol[], void *userdata)
-{
-	if(*(word[2]) == '\0')
-		if (action != 0)
-			xchat_printf(ph, "Now playing action currently enabled");
-		else
-			xchat_printf(ph, "Now playing action currently disabled");		
-	else
-	{
-		action = atoi(word[2]);
-		save_config();
-	}
-	return XCHAT_EAT_ALL;
-}
-
 static int sysinfo_cb(char *word[], char *word_eol[], void *userdata)
 {
 	char sysinfo[bsize], buffer[bsize], cpu_model[bsize], cpu_cache[bsize], cpu_vendor[bsize];
@@ -331,9 +261,9 @@ static int sysinfo_cb(char *word[], char *word_eol[], void *userdata)
 static int xsys_cb(char *word[], char *word_eol[], void *userdata)
 {
 	if((long)userdata)
-		xchat_printf(ph, "You are using X-Sys v%s (http://dev.gentoo.org/~chainsaw/xsys)", VER_STRING);
+		xchat_printf(ph, "You are using %s v%s (http://dev.gentoo.org/~chainsaw/xsys)", name, VER_STRING);
 	else
-		xchat_commandf(ph, "me is using X-Sys v%s (http://dev.gentoo.org/~chainsaw/xsys)", VER_STRING);
+		xchat_commandf(ph, "me is using %s v%s (http://dev.gentoo.org/~chainsaw/xsys)", name, VER_STRING);
 	
 	return XCHAT_EAT_ALL;
 }
@@ -683,52 +613,3 @@ static int hwmon_cb(char *word[], char *word_eol[], void *userdata)
 	return XCHAT_EAT_ALL;
 }
 #endif
-
-static int np_cb(char *word[], char *word_eol[], void *userdata)
-{
-	char *buffer = NULL, title[bsize], length[42];
-	int pos, len, p = audacious_remote_get_playlist_pos(dbus_proxy);
-
-	if (!audacious_remote_is_running(dbus_proxy))
-	{
-		xchat_printf(ph, "Audacious is not currently running");
-		return XCHAT_EAT_ALL;
-        }
-
-	pos = audacious_remote_get_output_time(dbus_proxy);
-	len = audacious_remote_get_playlist_time(dbus_proxy, p);
-	buffer = decruft_filename(audacious_remote_get_playlist_title(dbus_proxy, p));
-
-	strncpy(title, buffer, bsize);
-	
-	if (action != 0)
-		flat_format_output(playing, title, format);
-	else
-		format_output(playing, title, format);
-	strcat(title, "\017 ");
-
-	if(len == -1)
-		snprintf(length, 42, "%d:%02d/stream",
-		 ((pos/1000)-((pos/1000)%60))/60, (pos/1000)%60);
-	else 
-		snprintf(length, 42, "%d:%02d/%d:%02d",
-		 ((pos/1000)-((pos/1000)%60))/60, (pos/1000)%60,
-		 ((len/1000)-((len/1000)%60))/60, (len/1000)%60);
-	
-	if (action != 0)
-		flat_format_output("length", length, format);
-	else
-		format_output("length", length, format);
-	strncat(title, length, bsize);
-	
-	if ((action != 0) && (long)userdata)
-		xchat_printf(ph, "You are %s", title);
-	else if (action != 0)
-		xchat_commandf(ph, "me is %s", title);
-	else if ((long)userdata)
-		xchat_printf(ph, "%s", title);
-	else
-		xchat_commandf(ph, "say %s", title);
-	
-	return XCHAT_EAT_ALL;
-}