2c00a20157
ok jasper@
66 lines
1.6 KiB
Plaintext
66 lines
1.6 KiB
Plaintext
$OpenBSD: patch-src_sysinfo_cpp,v 1.3 2010/09/30 07:38:34 ajacoutot Exp $
|
|
--- src/sysinfo.cpp.orig Tue Sep 28 01:13:17 2010
|
|
+++ src/sysinfo.cpp Wed Sep 29 18:48:47 2010
|
|
@@ -74,7 +74,11 @@ namespace {
|
|
NULL);
|
|
|
|
|
|
+#ifndef __OpenBSD__
|
|
char* markup = g_strdup_printf(_("Release %s"), this->distro_release.c_str());
|
|
+#else
|
|
+ char* markup = g_strdup_printf(_("Kernel %s"), this->distro_release.c_str());
|
|
+#endif
|
|
|
|
g_object_set(G_OBJECT(release),
|
|
"label",
|
|
@@ -387,6 +391,27 @@ namespace {
|
|
};
|
|
|
|
|
|
+ class OpenBSDSysInfo
|
|
+ : public SysInfo
|
|
+ {
|
|
+ public:
|
|
+ OpenBSDSysInfo()
|
|
+ {
|
|
+ this->load_openbsd_info();
|
|
+ }
|
|
+
|
|
+ private:
|
|
+ void load_openbsd_info()
|
|
+ {
|
|
+ this->distro_name = "OpenBSD";
|
|
+
|
|
+ std::ifstream input("/etc/motd");
|
|
+
|
|
+ if (input)
|
|
+ std::getline(input, this->distro_release);
|
|
+ }
|
|
+ };
|
|
+
|
|
SysInfo* get_sysinfo()
|
|
{
|
|
if (char *p = g_find_program_in_path("lsb_release")) {
|
|
@@ -399,6 +424,9 @@ namespace {
|
|
else if (SysInfo::system() == "NetBSD") {
|
|
return new NetBSDSysInfo;
|
|
}
|
|
+ else if (SysInfo::system() == "OpenBSD") {
|
|
+ return new OpenBSDSysInfo;
|
|
+ }
|
|
|
|
return new SysInfo;
|
|
}
|
|
@@ -587,7 +615,11 @@ procman_create_sysinfo_view(void)
|
|
table_count++;
|
|
data->set_distro_labels(gtk_frame_get_label_widget(GTK_FRAME(distro_frame)), distro_release_label);
|
|
|
|
+#ifndef __OpenBSD__
|
|
markup = g_strdup_printf(_("Kernel %s"), data->kernel.c_str());
|
|
+#else
|
|
+ markup = g_strdup_printf(_("Release %s"), data->kernel.c_str());
|
|
+#endif
|
|
header = gtk_label_new(markup);
|
|
g_free(markup);
|
|
gtk_misc_set_alignment(GTK_MISC(header), 0.0, 0.5);
|