summaryrefslogtreecommitdiff
path: root/computer.c
diff options
context:
space:
mode:
Diffstat (limited to 'computer.c')
-rw-r--r--computer.c109
1 files changed, 48 insertions, 61 deletions
diff --git a/computer.c b/computer.c
index 151642eb..558206e7 100644
--- a/computer.c
+++ b/computer.c
@@ -1,6 +1,6 @@
/*
* HardInfo - Displays System Information
- * Copyright (C) 2003-2007 Leandro A. F. Pereira <leandro@linuxmag.com.br>
+ * Copyright (C) 2003-2008 Leandro A. F. Pereira <leandro@hardinfo.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -31,19 +31,6 @@
#include <vendor.h>
-enum {
- COMPUTER_SUMMARY,
- COMPUTER_OPERATING_SYSTEM,
- COMPUTER_KERNEL_MODULES,
- COMPUTER_BOOTS,
- COMPUTER_LANGUAGE,
- COMPUTER_FILESYSTEMS,
- COMPUTER_SHARES,
- COMPUTER_DISPLAY,
- COMPUTER_NETWORK,
- COMPUTER_USERS,
-} Entries;
-
/* Callbacks */
gchar *callback_summary();
gchar *callback_os();
@@ -51,10 +38,10 @@ gchar *callback_modules();
gchar *callback_boots();
gchar *callback_locales();
gchar *callback_fs();
-gchar *callback_shares();
gchar *callback_display();
gchar *callback_network();
gchar *callback_users();
+gchar *callback_env_var();
/* Scan callbacks */
void scan_summary(gboolean reload);
@@ -63,10 +50,10 @@ void scan_modules(gboolean reload);
void scan_boots(gboolean reload);
void scan_locales(gboolean reload);
void scan_fs(gboolean reload);
-void scan_shares(gboolean reload);
void scan_display(gboolean reload);
void scan_network(gboolean reload);
void scan_users(gboolean reload);
+void scan_env_var(gboolean reload);
static ModuleEntry entries[] = {
{"Summary", "summary.png", callback_summary, scan_summary},
@@ -75,9 +62,8 @@ static ModuleEntry entries[] = {
{"Boots", "boot.png", callback_boots, scan_boots},
{"Languages", "language.png", callback_locales, scan_locales},
{"Filesystems", "dev_removable.png", callback_fs, scan_fs},
- {"Shared Directories", "shares.png", callback_shares, scan_shares},
{"Display", "monitor.png", callback_display, scan_display},
- {"Network Interfaces", "network.png", callback_network, scan_network},
+ {"Environment Variables", "environment.png", callback_env_var, scan_env_var},
{"Users", "users.png", callback_users, scan_users},
{NULL},
};
@@ -97,11 +83,9 @@ static Computer *computer = NULL;
#include <arch/this/uptime.h>
#include <arch/this/os.h>
#include <arch/this/filesystem.h>
-#include <arch/this/samba.h>
-#include <arch/this/nfs.h>
-#include <arch/this/net.h>
#include <arch/common/users.h>
#include <arch/this/boots.h>
+#include <arch/common/environment.h>
gchar *hi_more_info(gchar * entry)
{
@@ -140,7 +124,7 @@ gchar *hi_get_field(gchar * field)
void scan_summary(gboolean reload)
{
SCAN_START();
- module_entry_scan_all_except(entries, COMPUTER_SUMMARY);
+ module_entry_scan_all_except(entries, 0);
computer->alsa = computer_get_alsainfo();
SCAN_END();
}
@@ -181,14 +165,6 @@ void scan_fs(gboolean reload)
SCAN_END();
}
-void scan_shares(gboolean reload)
-{
- SCAN_START();
- scan_samba_shared_directories();
- scan_nfs_shared_directories();
- SCAN_END();
-}
-
void scan_display(gboolean reload)
{
SCAN_START();
@@ -196,13 +172,6 @@ void scan_display(gboolean reload)
SCAN_END();
}
-void scan_network(gboolean reload)
-{
- SCAN_START();
- scan_net_interfaces();
- SCAN_END();
-}
-
void scan_users(gboolean reload)
{
SCAN_START();
@@ -267,6 +236,7 @@ gchar *callback_os()
"Kernel=%s\n"
"Compiled=%s\n"
"C Library=%s\n"
+ "Default C Compiler=%s\n"
"Distribution=%s\n"
"[Current Session]\n"
"Computer Name=%s\n"
@@ -280,6 +250,7 @@ gchar *callback_os()
computer->os->kernel,
computer->os->compiled_date,
computer->os->libc,
+ computer->os->gcc,
computer->os->distro,
computer->os->hostname,
computer->os->username,
@@ -291,18 +262,30 @@ gchar *callback_modules()
{
return g_strdup_printf("[Loaded Modules]\n"
"%s"
- "[$ShellParam$]\n" "ViewType=1", module_list);
+ "[$ShellParam$]\n"
+ "ViewType=1\n"
+ "ColumnTitle$TextValue=Name\n"
+ "ColumnTitle$Value=Description\n"
+ "ShowColumnHeaders=true\n", module_list);
}
gchar *callback_boots()
{
- return g_strdup(computer->os->boots);
+ return g_strdup_printf("[$ShellParam$]\n"
+ "ColumnTitle$TextValue=Date & Time\n"
+ "ColumnTitle$Value=Kernel Version\n"
+ "ShowColumnHeaders=true\n"
+ "\n"
+ "%s", computer->os->boots);
}
gchar *callback_locales()
{
return g_strdup_printf("[$ShellParam$]\n"
"ViewType=1\n"
+ "ColumnTitle$TextValue=Language Code\n"
+ "ColumnTitle$Value=Name\n"
+ "ShowColumnHeaders=true\n"
"[Available Languages]\n"
"%s", computer->os->languages);
}
@@ -310,19 +293,17 @@ gchar *callback_locales()
gchar *callback_fs()
{
return g_strdup_printf("[$ShellParam$]\n"
- "ViewType=1\n"
+ "ViewType=4\n"
"ReloadInterval=5000\n"
+ "Zebra=1\n"
+ "NormalizePercentage=false\n"
+ "ColumnTitle$Extra1=Mount Point\n"
+ "ColumnTitle$Progress=Usage\n"
+ "ColumnTitle$TextValue=Device\n"
+ "ShowColumnHeaders=true\n"
"[Mounted File Systems]\n%s\n", fs_list);
}
-gchar *callback_shares()
-{
- return g_strdup_printf("[SAMBA]\n"
- "%s\n"
- "[NFS]\n"
- "%s", smb_shares_list, nfs_shares_list);
-}
-
gchar *callback_display()
{
return g_strdup_printf("[Display]\n"
@@ -350,24 +331,13 @@ gchar *callback_display()
computer->display->dri ? "Yes" : "No");
}
-gchar *callback_network()
-{
- return g_strdup_printf("%s\n"
- "[$ShellParam$]\n"
- "ReloadInterval=3000\n"
- "ViewType=1\n"
- "%s", network_interfaces, network_icons);
-}
-
gchar *callback_users()
{
return g_strdup_printf("[$ShellParam$]\n"
"ReloadInterval=10000\n"
"ViewType=1\n"
- "[Human Users]\n"
- "%s\n"
- "[System Users]\n"
- "%s\n", human_users, sys_users);
+ "[Users]\n"
+ "%s\n", users);
}
gchar *get_os_kernel(void)
@@ -376,10 +346,27 @@ gchar *get_os_kernel(void)
return computer->os->kernel;
}
+gchar *get_kernel_module_description(gchar *module)
+{
+ gchar *description;
+
+ if (!_module_hash_table) {
+ scan_modules(FALSE);
+ }
+
+ description = g_hash_table_lookup(_module_hash_table, module);
+ if (!description) {
+ return g_strdup(module);
+ }
+
+ return g_strdup(description);
+}
+
ShellModuleMethod *hi_exported_methods(void)
{
static ShellModuleMethod m[] = {
{"getOSKernel", get_os_kernel},
+ {"getKernelModuleDescription", get_kernel_module_description},
{NULL}
};