Hwinfo build thread

Yes. You can see the project at the state it was at, when I started on the QC project here:

I described most of it, in the readme file, but to summarize here:

The site is at it’s core, a generic pastebin, with inbuilt parsers, for common system information applications, like hwinfo, lsblk, lsusb or even the Steam System Information windows.

The site will present the users with a regular text area to paste the output into and a drop-down menu, where they can select the command that they ran/will run.
When a command is selected, it will display a help menu, showing exactly how to run it and with what parameters and you can click a button to copy the command.
For each command, you get three options (presented behind three tabs)

  • Copy+Paste command
    This shows the bare-bones command to run. For commands that support json output, this is the format that will be shown.
  • Command including curl
    This will run the command and upload it in one go and include your current unique ID number, so you can find your report (if no ID is provided, a random one will be generated and returned to the user in the terminal)
  • A download button for a simple bash script
    The script will check for the existence of the sysinfo programs and curl on your system before running and will display a helpful message if they are not found.
    If all programs are available, it will run them and upload the results.

The site will also support other people generating a report request, so you might get 3 text areas with commands and instructions pre-selected as well as a single bash file that will run all commands in one go.
This is particularly useful in support situations, where someone asks for help related to their graphics and the people trying to help can request the output of hwinfo, xrandr and glxinfo in one report.
For the QC site, this will also mean that developers can choose only to accept applications that have included the output of hwinfo in their application (there will be a text field to paste the UUID generated from your report) or perhaps even an automatic report submission, if you use their report-generator link.

Only pre-selected and safe commands will be available, so you cannot inject malicious commands in the bash script and then link to it.

There are some additional features of the site, but I think those are the main points.

Glad to see it!

Q: As you’re designing it, is hwinfo intended to be a separate platform for the QC site to point users to or are you thinking parts of the code will become a module for the QC site?

Thanks @kobberholm

It is meant to run completely stand alone with a dirt simple API without requiring any sign up, so anyone can use it from any site.
So the plan is to have it stand alone, but it is possible to self host it as well.

One of the main selling points is that the site generates a hardware profile, that users can share without sharing potentially revealing information, that could otherwise be in these reports, such as serial numbers, partition names, IP addresses etc.

Hwinfo does not know you. You are just a UUID, so there is no simple way to link your hardware profile to you.

If the site becomes hosted inside other sites, you would lose that separation and someone who is just supposed to know what your memory profile is, now know that you mounted a 4 TB drive as ‘Furries’ :wink:

If a user enters a UUID from Hwinfo into a QC Platform account there’s no anonymity gain as now both platforms would have observed identifiers in conjunction with the user’s hardware specs. (Assuming both platforms use equivalent policies and methods for respecting user privacy.)

As it relates to the QC Platform I don’t understand the difference but it’s definitely true of providing hardware specs to services that may not care about what the user wants to share. There it’s a benefit for sure. Where would collaboration occur if QC users weren’t adding their hardware details to their own accounts?

You enter no PII into hwinfo. Just command output.
Hwinfo reads the raw report(s) and builds a hardware profile. This profile has no device names, serial numbers or mount points. It just has the anonymous extracted data such as 4 sticks of 3200 MHz DDR 4 memory, 1 x 256GB Crucial SATA SSD etc.
This is the profile that you share with other sites by its UUID.

And users can choose to enter this information directly in their profile on the QC platform.
Hwinfo is just for convenience or for people who don’t know their specs.

2 posts were merged into an existing topic: DLN Community Project - Quality Control Platform