Coder Social home page Coder Social logo

lpereira / hardinfo Goto Github PK

View Code? Open in Web Editor NEW
762.0 37.0 131.0 5.87 MB

System profiler and benchmark tool for Linux systems

Home Page: http://hardinfo.org

License: GNU General Public License v2.0

C 96.21% CMake 2.28% Shell 0.61% Roff 0.25% Python 0.64%
c linux profiler system-information

hardinfo's Introduction

Warning

This repository is being decomissioned and will remain as a personal archive of HardInfo source code. The development continues in the @hardinfo2/hardinfo2 repository. This branch will soon become a mirror of the main branch from the hardinfo2 repository.

HARDINFO

HardInfo is a system profiler and benchmark for Linux systems. It is able to obtain information from both hardware and basic software, and organize it in a simple to use GUI.

Features include:

  • Report generation (in either HTML or plain text)
  • Benchmark result synchronization
  • Ability to explore the information on remote computers

Status

Capabilities: HardInfo currently detects most software and hardware detected by the OS. Features: The remote sync was disabled due to server loss. Development: Currently done by contributors, a new dedicated maintainer is needed.

Server code can be found in the "server" branch: https://github.com/lpereira/hardinfo/tree/server

DEPENDENCIES

Required:

  • GTK+ 2.10 (or newer)
  • GLib 2.10 (or newer)
  • Zlib (for zlib benchmark)

Optional (for synchronization/remote):

  • Libsoup 2.24 (or newer)

BUILDING

Create a build directory and build from there:

	hardinfo $ mkdir build
	hardinfo $ cd build
	build $ cmake ..
	build $ make

There are some variables that can be changed:

  • CMAKE_BUILD_TYPE: Can either be Release or Debug.
    • [Default: Release] Debug prints messages to console and is not recommended for general use.
  • CMAKE_INSTALL_PREFIX: Sets the installation prefix.
    • [Default: /usr/local]: Distributions usually change this to /usr.
  • HARDINFO_NOSYNC: Disables network synchronization.
    • [Default: 1]: Disabled by default due to the server being lost.

To set a variable, use cmake's -D parameter. For example:

build $ cmake .. -DCMAKE_BUILD_TYPE=Debug

Network sync is enabled if libsoup is detected. If having trouble building with libsoup, disable it with:

build $ cmake -DHARDINFO_NOSYNC=1

SETTING UP

Most hardware is detected automatically by HardInfo, however, some hardware needs manual set up. They are:

Sensors

lm-sensors: If your computer is compatible with lm-sensors module, use by example the sensors-detect program included with the lm-sensors package of Debian based distros, and be sure to have the detected kernel modules loaded.

hddtemp: To obtain the hard disk drive temperature, be sure to run hddtemp in daemon mode, using the default port.

Memory Speed

The module eeprom must be loaded to display info about your currently installed memory. Load with modprobe eeprom and refresh the module screen.

hardinfo's People

Contributors

afonot avatar bp0 avatar entityfx avatar esin avatar fernandolopez avatar freddii avatar hasufell avatar hugok79 avatar jurobystricky avatar kmikita avatar liuxiang88 avatar lpereira avatar lunixoid avatar mckaygerhard avatar micrococo avatar ocerman avatar oltulu avatar pepaulo avatar rezso avatar salatwurzel avatar sergiosvieira avatar serkan-maker avatar thehacker avatar timgates42 avatar totalcaesar659 avatar tsimonq2 avatar viktoron avatar yetist avatar yunlisa96 avatar zhuyaliang avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

hardinfo's Issues

Check usage of popen() for leaks via stderr

As reported in issue #25, popen() can leak there is output to stderr and it hasn't been captured (2>&1). It is probably better to use g_spawn_command_line_sync() and capture stdout and stderr separately.

  • modules/network/samba.c:55: (#164)
  • modules/computer/boots.c:37: (#165)
  • modules/computer/languages.c:31: (#169)
  • modules/computer/modules.c:53: lsmod = popen(lsmod_path, "r");
  • modules/computer/modules.c:79: modi = popen(buf, "r");
  • modules/network.c:93: if ((netstat = popen(command_line, "r"))) {
  • modules/network.c:191: if ((route = popen(command_line, "r"))) {
  • modules/network.c:267: if ((netstat = popen("netstat -an", "r"))) {
  • modules/devices/pci.c:58: if (!(lspci = popen(command_line, "r"))) {(#237)
  • modules/devices/pci.c:69: if (!(lspci = popen(tmp, "r"))) { (#237)
  • modules/devices/dmi.c:83: (#160)
  • modules/devices/battery.c:63: if (apcaccess_path && (apcaccess = popen(apcaccess_path, "r"))) {
  • modules/devices/storage.c:208: if ((prcap = popen(tmp, "r"))) {
  • modules/devices/usb.c:386: (#175 #178)

Handy chunk for line-by-line:

    gboolean spawned;
    gchar *out, *err, *p, *next_nl;

    spawned = g_spawn_command_line_sync("...",
            &out, &err, NULL, NULL);
    if (spawned) {
        p = out;
        while(next_nl = strchr(p, '\n')) {
            *next_nl = 0;
            ...
            p = next_nl + 1;
        }
        g_free(out);
        g_free(err);
    }

File descriptor leak

When running on Ubuntu 14.04, hardinfo eventually stops updating due to too many open file descriptors when running as root, with the Sensors tab selected:

(hardinfo:7211): Gtk-WARNING **: Error loading theme icon 'view-refresh' for stock: Error opening file: Too many open files

Terminating the process and restarting fixes the problem (temporarily). Also (and not necessarily related) the temperatures shown are temp1, temp2, temp3, temp4, temp5, temp6, temp7, temp1, temp2 and temp3. The duplicate values have the same temperature listed as the first occurrence of the same key.

Doesn't properly handle variable clock Skylake CPUs

Current CPUs have min/max clock speeds that will be adjusted based on load. Benchmarking tools should always switch the processor to the highest clock speed (turbo) to properly determine performance. Using Ubuntu Gnome 17.04 on a Skylake series Intel i7-6700k CPU, this behavior does not occur. The CPU performance test all ran my CPU at the lowest possible clock speed. Please contact me if you have any questions or would like me to test something.

Add keywords to hardinfo.desktop

In Debian, the Lintian tool is warning us about the hardinfo.desktop file lacking keywords. Documentation for doing this is here.

Is this something that can be added?

GTK3 TODO

GTK3 support was added in #114, but it still has a few issues.

Status

  • Hardinfo builds and runs without crashing on GTK3.
  • GTK2 continues to work as well as it ever did.
  • There are many deprecation warnings during build.
  • loadgraph is replaced by Christian Hergert's uber-graph widget for GTK3 hardinfo
  • guibench is disabled for gtk3.
  • look for TODO:GTK3 in the code to find places that need work.
grep -nr --include='*.[hc]' "TODO:GTK3" *
shell/report.c:916:/* TODO:GTK3
shell/shell.c:366:    /* TODO:GTK3 css-based style */
shell/shell.c:855:    /* TODO:GTK3 */
shell/shell.c:888:    /* TODO:GTK3 */
shell/shell.c:1616:     /* TODO:GTK3 gtk_alignment_new(), etc is deprecated from 3.14 */
shell/shell.c:1780:    /* TODO:GTK3 */

Testing

mkdir build && cd build
cmake -DHARDINFO_GTK3=1 ..
[etc.]

Things to look at

  • modules/computer/display.c: gdk_screen_* all deprecated in 3.22.

Translation status

hardinfo.pot now has 1213 strings (+84), with 69 c-format strings
( 860b43d)

  • de.po : (1016 / 1213 remain untranslated, needs work/fuzzy: 2)
  • es.po : (538 / 1213 remain untranslated, needs work/fuzzy: 0)
  • fr.po : (807 / 1213 remain untranslated, needs work/fuzzy: 0)
  • pt_BR.po : (151 / 1213 remain untranslated, needs work/fuzzy: 0)
  • ru.po : (422 / 1213 remain untranslated, needs work/fuzzy: 0)
  • zh_CN.po : (835 / 1213 remain untranslated, needs work/fuzzy: 0)

bug: translated report inconsistences

i have a rusian desktop with spanish default locate.. and when i generated the hardinfo report from russian desktop the result are all in spanish and dont have any russian info.. i mean in the locate section said that only spanish are set and no english or/and russian are present.. but its!

Seems that if not all the LC_XXXXX variables are set will have a influence in the report as my env string reports for locale vars:

hardinfo-russian-spanish-problem1

hardinfo_report.txt

need urgency help menu_item_set_icon_always_visible undefined reference

libhardinfo-shell.a(shell.c.o): In function menu_item_set_icon_always_visible': /media/DATASUPER/MASSENKOH-new/MASSENKOH-REPO/mskcommon/desktop/hardinfo/hardinfo-0.5.1+20120601/shell/shell.c:506: undefined reference togtk_image_menu_item_set_always_show_image'

searching in api http://developer.gnome.org/gtk/2.24/GtkImageMenuItem.html#gtk-image-menu-item-set-always-show-image seems that hardinfo need gtk 2.18 as minimun,

documentation said this since 2.16 but failds.. i use 2.16 and dont work.
i need to kwon how to disable this funtion or workaround for build with gtk 2.16 please

commented the lines compiles, due the function only forces menu loading, its commonly utility as i read..

Use JSON for benchmark.conf replacement

More system information could be included and the results could be grouped by same machine. Something like simple JSMN could be used to parse. Would probably make some future database sync easier as well.

After #141, could be something like:

{
  "board": < devices::getMotherboard >,
  "memory": < devices::getMemoryTotal >,
  "cpu_name": < devices::getProcessorName >,
  "cpu_desc": < devices::getProcessorDesc >,
  "cpu_config": < devices::getProcessorFrequencyDesc >,
  "results": {
         "CPU Zlib": 12.34,
         "FPU FFT": 78.91,
...
  }
}

Just an idea right now.

add support for hdparm -I

Please add support for
hdparm -I /dev/sdX

This would indicate among other things the Nominal Media Rotation Rate: 7200, an info that is currently not available in Devices > Storage.

Fix all issues that Debian or Ubuntu carry patches for

  • make-build-reproducable.patch ( 8e47464 )
  • fix-ppc64el-ftbfs.patch ( 285a6cb and 217f76d )
  • glibc-version.patch ( several, latest: 6209978 )
  • man page (candidate at #54)

Debian build log bugs:

  • pointer-from-integer in modules/devices/parisc/processor.c (ac9072b)
  • compiler-flags-hidden (would make VERBOSE=1 fix this?)

Debian lintian:

  • desktop-entry-lacks-keywords-entry ( 7e6f3f3 )
  • spelling-error-in-binary (won't fix: "Synopsys" in modules/devices/spd-decode.c is a proper noun)

References:

  1. https://tracker.debian.org/pkg/hardinfo
  2. https://anonscm.debian.org/git/collab-maint/hardinfo.git/tree/debian/patches
  3. https://qa.debian.org/bls/packages/h/hardinfo.html
  4. https://lintian.debian.org/full/[email protected]#hardinfo

memory info not show with poor translated env

in the resumen module in computer section memory info its not show if hardinfo are used in a poorly translated language.

as @lpereira said:

If it's not updating, it's a bug somewhere else, likely in the shell rather than the computer module. I find it very unlikely, as that is some well-tested part of the code and it works on every machine I've tried HardInfo on.

added

it's possible that it's been poorly translated and the UpdateInterval$Memory=1000 has not been translated to match the Memory key.

then i tested as and have right in part, using different lang this king of memory info that show are broken, i tested in russian and in spanish and does not show nothing...

using this for launch:

export LANG=C;export LANGUAGE=C;export GDM_LANG=C;export LC_ALL=C;hardinfo

hardinfo correctly show so i'll open a issue and let this pull request opened until u decided what are best to do

Code style is not consistent

4 spaces are used for singe identation, while TAB (8 space equivalent) is used for multiple identation.

I suggest the exclusive use of TAB.

Also seems like this code is generated from some automatic tool, maybe from python, and instead of calling directly function, it uses a hastable.

That break many thing like tool to jump to function definition, static tool analysis, and in general the type safeness of c/c++ by using generic argument.

Am i missing something or that part of code can be cleaned up?

hardinfo displays only the first HDD's temperature in Devices>Sensors

Hardinfo won't display all of my Hard Drive temps. It will only show the temp for my primary drive /dev/sda but not any additional drives. I have hddtemp installed and running. I have manually added my drives to /usr/share/hddtemp/hddtemp.db. I have editd /etc/conf.d/hddtemp to include checking of all my drives.

Drives installed
"WDC WD5000HHTZ-04N21V0" 194 C "Western Digital VelociRaptor 500GB" /dev/sda
"TOSHIBA DT01ACA300" 194 C "Toshiba 3TB" /dev/sbb
"Hitachi HDS723015BLA642" 194 C "Hitachi Deskstar 1.5TB" /dev/sdc
"HDT722516DLA380" 194 C "Hitachi Deskstar 160GB" /dev/sdd

I can manually run hddtemp on any /dev/? and it reports the current temp, but hardinfo doesn't appear to pick them up or display them in Devices>Sensors

bug: no glibc available info now

i cannot track from where commit the libc6 info cannot be tracket.. but now its unkown, i tested in Debian jeesie, Devuan jeesie, Debian wheeze, and only works in Debian squeeze and lenny works too perfectly, see picture:

errorcglibchardinfo

Debian in recent packages has a patch but its unusable (was using ldconfig -V and strip the version info) due neither works.

Segmentation fault (core dumped)

occurs when looking at 'input devices'.

also; usb devices and sensors display nothing.

and; going to 'operating system' reports; 'sh: 1: /lib/libc.so.6: not found'

Ubuntu mate 15.10, hardinfo installed from repo's

Crash (GTK3 build)

After compiling latest master build with GTK3, it crashes after pressing "Summary" with output:

hardinfo: symbol lookup error: /usr/lib/hardinfo/modules/computer.so: undefined symbol: info_new

GTK2 version is OK (as GTK3 version before).

Release a new version of hardinfo

I recently adopted the hardinfo package in Debian and it was mildly frustrating to see that there have been many commits to this Git repository but the last time it was tagged was in 2009.

Any chance we could get a new release/Git tag so I don't have to update to a Git snapshot every time?

Use spaces for indentation throughout

As mentioned in #33 (a conversation that went way off-topic), the code uses a mix of spaces and tabs for indentation.
I prefer spaces, so I've been using spaces in all new code, and converting old code that I edit.

tabspace

Status

Checked means cleaned. Uses all spaces (or tabs, but not a mix) for indentation; has no whitespace on empty lines.
(as of 8e47464)

  • hardinfo/binreloc.c
  • hardinfo/expr.c
  • hardinfo/hardinfo.c
  • hardinfo/socket.c
  • hardinfo/util.c
  • hardinfo/vendor.c
  • includes/alpha/processor-platform.h
  • includes/arm/processor-platform.h
  • includes/benchmark.h
  • includes/binreloc.h
  • includes/blowfish.h
  • includes/callbacks.h
  • includes/computer.h
  • includes/cpu_util.h
  • includes/devices.h
  • includes/dt_util.h
  • includes/egg-markdown.h
  • includes/expr.h
  • includes/fftbench.h
  • includes/gettext.h
  • includes/guibench.h
  • includes/hardinfo.h
  • includes/help-viewer.h
  • includes/ia64/processor-platform.h
  • includes/iconcache.h
  • includes/loadgraph.h
  • includes/m68k/processor-platform.h
  • includes/markdown-text-view.h
  • includes/md5.h
  • includes/menu.h
  • includes/mips/processor-platform.h
  • includes/network.h
  • includes/nqueens.h
  • includes/parisc/processor-platform.h
  • includes/ppc/processor-platform.h
  • includes/remote.h
  • includes/report.h
  • includes/riscv/processor-platform.h
  • includes/s390/processor-platform.h
  • includes/sh/processor-platform.h
  • includes/sha1.h
  • includes/shell.h
  • includes/socket.h
  • includes/sparc/processor-platform.h
  • includes/ssh-conn.h
  • includes/stock.h
  • includes/syncmanager.h
  • includes/test-utils.h
  • includes/uidefs.h
  • includes/vendor.h
  • includes/x86/processor-platform.h
  • includes/xmlrpc-client.h
  • includes/xmlrpc-server.h
  • modules/benchmark.c
  • modules/benchmark/blowfish.c
  • modules/benchmark/cryptohash.c
  • modules/benchmark/drawing.c
  • modules/benchmark/fbench.c
  • modules/benchmark/fft.c
  • modules/benchmark/fftbench.c
  • modules/benchmark/fib.c
  • modules/benchmark/guibench.c
  • modules/benchmark/md5.c
  • modules/benchmark/nqueens.c
  • modules/benchmark/raytrace.c
  • modules/benchmark/sha1.c
  • modules/benchmark/zlib.c
  • modules/computer.c
  • modules/computer/alsa.c
  • modules/computer/boots.c
  • modules/computer/display.c
  • modules/computer/environment.c
  • modules/computer/filesystem.c
  • modules/computer/groups.c
  • modules/computer/languages.c
  • modules/computer/loadavg.c
  • modules/computer/memory.c
  • modules/computer/modules.c
  • modules/computer/os.c
  • modules/computer/uptime.c
  • modules/computer/users.c
  • modules/devices.c
  • modules/devices/alpha/processor.c
  • modules/devices/arm/arm_data.c
  • modules/devices/arm/arm_data.h
  • modules/devices/arm/processor.c
  • modules/devices/battery.c
  • modules/devices/cpu_util.c
  • modules/devices/devicetree.c
  • modules/devices/devicetree/dt_util.c
  • modules/devices/devicetree/pmac_data.c
  • modules/devices/devicetree/rpi_data.c
  • modules/devices/devmemory.c
  • modules/devices/dmi.c
  • modules/devices/ia64/processor.c
  • modules/devices/inputdevices.c
  • modules/devices/m68k/processor.c
  • modules/devices/mips/processor.c
  • modules/devices/parisc/processor.c
  • modules/devices/pci.c
  • modules/devices/ppc/processor.c
  • modules/devices/printers.c
  • modules/devices/resources.c
  • modules/devices/riscv/processor.c
  • modules/devices/riscv/riscv_data.c
  • modules/devices/riscv/riscv_data.h
  • modules/devices/s390/processor.c
  • modules/devices/sensors.c
  • modules/devices/sh/processor.c
  • modules/devices/sparc/processor.c
  • modules/devices/spd-decode.c
  • modules/devices/storage.c
  • modules/devices/usb.c
  • modules/devices/x86/processor.c
  • modules/devices/x86/x86_data.c
  • modules/devices/x86/x86_data.h
  • modules/network.c
  • modules/network/net.c
  • modules/network/nfs.c
  • modules/network/samba.c
  • shell/callbacks.c
  • shell/iconcache.c
  • shell/loadgraph-uber.c
  • shell/loadgraph.c
  • shell/menu.c
  • shell/report.c
  • shell/shell.c
  • shell/stock.c
  • shell/syncmanager.c

ajust depends of cmake raise to 2.8.5 due GNUInstalldirs modle inclusion

e0e7478#commitcomment-2093285

ajust depends of cmake raise to 2.8.5 due above comment

i think that including this module are innecesari and limits many older users to compile in currently instalations..

hardinfo its a light analisis and benchmark tool, with recent hardware and lot of resources will prefer more elaborated software, so i think this must be oriented to users that have older software and older hardware as it . not only lisgt resourses

what its sense using modern softwre in olde hardware if need too many moder components.. recent distributinos dont install in this king of machines..

Fibonacci benchmark implementations compared

The 42nd fibonacci sequence number benchmark reports 1.44 seconds on my machine.
I opened a firefox tab and the javascript console and wrote my own version of the benchmark.
It could calculate the 1025nd fibonacci sequence number within several milliseconds; 8.98846567431158e+3071.
screenshot from 2016-02-14 22 52 56

Column/Item label format conversion process

(Starting in PR #98, this issue to track comments and progress)

I think the labels of column headers and/or rows should be broken out of
the c-format strings because:

  • The strings are more easily translated.
  • The strings are more likely to be re-usable.
  • A small change to one does not lose all of them.
  • Changing a shell parameter does not lose all of them.
  • Re-ordering them does not lose all of them.
  • Adding items does not lose all of them.

I've been doing this in all new code, and converting old code.

Example:

return g_strdup_printf(_("[$ShellParam$]\n"
		   "ReloadInterval=10000\n"
		   "ColumnTitle$TextValue=Name\n"
		   "ColumnTitle$Value=Group ID\n"
		   "ShowColumnHeaders=true\n"
		   "[Groups]\n"
		   "%s\n"), groups);

Changed to:

return g_strdup_printf("[$ShellParam$]\n"
               "ReloadInterval=10000\n"
               "ColumnTitle$TextValue=%s\n" /* Name */
               "ColumnTitle$Value=%s\n" /* Group ID */
               "ShowColumnHeaders=true\n"
               "[%s]\n%s\n",
               _("Name"), _("Group ID"),
               _("Groups"), groups);

Another example (post-conversion):

gchar *val = g_strdup_printf("[%s]\n"
        "%s=%d\n"
        "%s=%d\n"
        "%s=%s\n"
        "%s=%s\n",
        _("User Information"),
        _("User ID"), (gint) passwd_->pw_uid,
        _("Group ID"), (gint) passwd_->pw_gid,
        _("Home Directory"), passwd_->pw_dir,
        _("Default Shell"), passwd_->pw_shell);

Status

  • modules/devices.c
  • modules/devices/spd-decode.c
  • modules/devices/battery.c
  • modules/devices/storage.c
  • modules/devices/printers.c
  • modules/network.c
  • modules/computer.c
  • modules/computer/boots.c
  • modules/computer/environment.c
  • modules/computer/display.c
  • modules/computer/alsa.c
  • modules/benchmark.c
  • shell/shell.c
  • shell/syncmanager.c
  • shell/callbacks.c
  • hardinfo/util.c

More

  • modules/computer/modules.c (#129, #140)
  • modules/computer/languages.c (#130, #140)
  • modules/devices/pci.c (#131, #140)
  • modules/devices/inputdevices.c (#132, #140)
  • modules/devices/usb.c (#140)

This comment also:
#98 (comment)

Inconsistet results on Debian

Hello! On my Debian/Sid system I used hardinfo to compare performances among different kernel versions on the same machine, but now benchmarking has become inconsistent: missing results, too much different values. See the attachments to have an idea.
hf24042017.pdf
hf10072017.pdf

Properly license cmake/GNUInstallDirs.cmake

In the file cmake/GNUInstallDirs.cmake, it's in a gray area to include this in Debian at the moment because it states:

#=============================================================================
# Copyright 2011 Nikita Krupen'ko <[email protected]>
# Copyright 2011 Kitware, Inc.
#
# Distributed under the OSI-approved BSD License (the "License");
# see accompanying file Copyright.txt for details.
#
# This software is distributed WITHOUT ANY WARRANTY; without even the
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# See the License for more information.
#=============================================================================
# (To distribute this file outside of CMake, substitute the full
#  License text for the above reference.)

Yet, the license is nowhere to be found. Copyright.txt is not present, and there's only the short version of the license.

Could this please be fixed so this can be included in Debian properly?

USB Devices

the USB field is always empty, i tried on many different distribution.
Now i'm on a Kubuntu 16.04 64bit

Instead the terminal command report it

kubuntu@kubuntu-PC:~$ lsusb
Bus 002 Device 007: ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter
Bus 002 Device 006: ID 1d6b:0104 Linux Foundation Multifunction Composite Gadget
Bus 002 Device 005: ID 05e3:0608 Genesys Logic, Inc. Hub
Bus 002 Device 004: ID 04f3:0103 Elan Microelectronics Corp. ActiveJet K-2024 Multimedia Keyboard
Bus 002 Device 003: ID 046d:c050 Logitech, Inc. RX 250 Optical Mouse
Bus 002 Device 008: ID 058f:6387 Alcor Micro Corp. Flash Drive
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Untranslatable strings

Hello! When I fixed Russian translation, I tried to add some untranslated strings to ru.po, converted to MO and launched the program with it. But the strings hasn't been translated, even if they was added in ru.po.
Here is the screenshots of some of that untranslatable places.
2016-12-28-003048_1280x974_scrot
2016-12-28-003104_1280x974_scrot
2016-12-28-003124_1280x974_scrot
2016-12-28-003144_1280x974_scrot

Add ability to name sensors

It would be great if sensors could be named (instead of having thermal_zone3 or temp2).

HardInfo already supports this by reading the sensors.conf file from lm-sensors, but not all of them are named properly.

With DMI information on x86, this could be mapped to the board name and plugged to the network updater, so users could contribute this information and receive information from other users.

Support kFreeBSD/BSD

Debian (but not Ubuntu) builds packages for the kFreeBSD port, and so we should support building on that port (just amd64 and i386 for that port). *BSD support could also be accomplished in this patch.

Any objection to moving the gtk2 requirement from 2.10 to 2.18?

It would remove all of the GTK_CHECK_VERSION()s for 2.x, and many of the changes for GTK3 wouldn't require version checks because they were existing by 2.18, but the 2.x series still carried the functions that were replaced for compatibility. The compatibility was only removed in 3.0.
GTK+2.18 was released around September 2009.

After PR #125:

grep -nr --include='*.[hc]' "GTK_CHECK_VERSION(2" *
shell/report.c:805:#if GTK_CHECK_VERSION(2, 14, 0)
shell/report.c:896:#if GTK_CHECK_VERSION(2, 18, 0)
shell/report.c:907:#if GTK_CHECK_VERSION(2, 18, 0)
shell/report.c:915:#if GTK_CHECK_VERSION(2, 14, 0)
shell/report.c:933:#if GTK_CHECK_VERSION(2, 18, 0)
shell/report.c:943:#if GTK_CHECK_VERSION(2, 18, 0)
shell/shell.c:123:#if GTK_CHECK_VERSION(2,16,0)
shell/shell.c:515:#if GTK_CHECK_VERSION(2, 18, 0)
shell/shell.c:843:#if GTK_CHECK_VERSION(2, 14, 0)
shell/shell.c:862:#if GTK_CHECK_VERSION(2, 14, 0)
shell/shell.c:896:#if GTK_CHECK_VERSION(2, 14, 0)
shell/shell.c:952:#if GTK_CHECK_VERSION(2, 18, 0)
shell/shell.c:1001:#if GTK_CHECK_VERSION(2, 18, 0)
shell/shell.c:1017:#if GTK_CHECK_VERSION(2, 18, 0)
shell/shell.c:1401:#if GTK_CHECK_VERSION(2, 14, 0)
shell/shell.c:1409:#if GTK_CHECK_VERSION(2, 14, 0)
shell/shell.c:1464:#if GTK_CHECK_VERSION(2, 14, 0)
shell/shell.c:1475:#if GTK_CHECK_VERSION(2,12,0)
shell/shell.c:1963:#if GTK_CHECK_VERSION(2,12,0)
shell/syncmanager.c:670:#if GTK_CHECK_VERSION(2, 14, 0)
shell/syncmanager.c:739:#if GTK_CHECK_VERSION(2, 14, 0)
shell/syncmanager.c:752:#if GTK_CHECK_VERSION(2, 18, 0)
shell/syncmanager.c:761:#if GTK_CHECK_VERSION(2, 18, 0)
shell/syncmanager.c:771:#if GTK_CHECK_VERSION(2, 18, 0)
shell/callbacks.c:118:#if GTK_CHECK_VERSION(2, 12, 0)
shell/callbacks.c:189:#if GTK_CHECK_VERSION(2, 12, 0)

feat req: include gambas2 and gambas3 in development

Gambas are a multi tearing programing environment, also are interpreted, byte-compiling and also inclusive can be autoproduce antive code.. its the visual basic on linux..

i'll made a little patch to include in the list of programing environemt due its the most easy to learn language, lest see:

Public Sub Main()
  Print "Hello world"
End

and the IDE do the rest.. the programing components are also graphically:
gambas-graphicall

Update server not available - is the project dead?

When I try to update the database, I get the following message:

Failed while performing "Contacting HardInfo Central Database". Please file a bug report if this problem persists. (Use the Help→Report bug option.)

Details: Could not parse XML-RPC response

If I try to report a bug, I get redirected to http://www.berlios.de/.

No battery information for ASUS laptop

On ASUS laptop UX31A, no battery information is displayed. Only the message "No batteries found on this system" is reported and on the command line

sh: 0: -c requires an argument

is printed. This concerns HardInfo version 0.5.1 on Ubuntu 15.10 Wily.

Errors reported command line on Summary

On command line the following errors are reported when choosing Summary in HardInfo:

sh: 1: /lib/libc.so.6: not found
sh: 1: gnome-about: not found

The first is unclear why this is required, since Ubuntu doesn't ship that file, see http://packages.ubuntu.com/search?searchon=contents&keywords=libc.so.6&mode=exactfilename&suite=wily&arch=any

The second is also unclear why this is required as it is not available, see

apt-cache search gnome about|grep -i about
apt-cache search gnome-about|grep -i about

as both do not result in any package. This concerns HardInfo version 0.5.1 on Ubuntu 15.10 Wily.

un-compilable due soup newer api

since the commit 907a624 i cannot compile..

the errors its due https://developer.gnome.org/libsoup/stable/libsoup-2.4-XMLRPC-Support.html#soup-xmlrpc-parse-response are only available since soup 2.52

i understand due since 2.52 the soup_xmlrpc_extract_method_response are marked DEPRECATED in flavor of soup_xmlrpc_parse_response so the commit update the hardinfo compilation process to up to date soup api..

maybe sound complicated but this made hardinfo unnavailable to compile for some that still uses the old soup api..

as i remenber some specific versions of hardware does not install with newer versions of software, as example VIA unichrome GPU does not offerts OpenGL capabilities with recent Xorg versions.. due not DRI v1 capabilities.. and yes i have a VIA motherboard and only works with some specific xorg version and specific linux kernel, some other examples are Asus Eeepc or Geode Daruma (yes also have one of that)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.