numtide / nixos-facter

Declarative hardware configuration for NixOS [maintainer=@numtide]
https://numtide.github.io/nixos-facter/
Other
202 stars 4 forks source link

nixos-facter is missing hardware that is present in hwinfo #140

Open Mic92 opened 2 days ago

Mic92 commented 2 days ago

In hwinfo I see this:

46: USB 00.0: 0000 Unclassified device [Created at usb.122] Unique ID: POWV.ICYKfTdMza8 Parent ID: k4bc.2DFUsyrieMD SysFS ID: /devices/pci0000:00/0000:00:14.0/usb1/1-9/1-9:1.0 SysFS BusID: 1-9:1.0 Hardware Class: unknown Model: "Synaptics Prometheus MIS Touch Fingerprint Reader" Hotplug: USB Vendor: usb 0x06cb "Synaptics, Inc." Device: usb 0x00bd "Prometheus MIS Touch Fingerprint Reader" Serial ID: "9fb43bdff866" Speed: 12 Mbps Module Alias: "usb:v06CBp00BDd0000dcFFdsc10dpFFicFFisc00ip00in00" Config Status: cfg=new, avail=yes, need=no, active=unknown Attached to: #52 (Hub)

However in my factor.json the same device is not present:

facter.json

Mic92 commented 2 days ago

Looking at the facter.json I am missing devices between 42 and 47?

Mic92 commented 2 days ago

I added some logging and it looks like this device is also received in factor but than discarded?

118 sysfs_id: /devices/pci0000:00/0000:00:14.0/usb1/1-9/1-9:1.0 119 sysfs_bus_id: 1-9:1.0 120 sysfs_device_link:

Mic92 commented 2 days ago

Ah actually it's in the report:

      {
        "index": 40,
        "attached_to": 46,
        "bus_type": {
          "name": "USB",
          "value": 134
        },
        "slot": {
          "bus": 0,
          "number": 0
        },
        "base_class": {
          "name": "Unclassified device",
          "value": 0
        },
        "sub_class": {
          "name": "Unclassified device",
          "value": 0
        },
        "vendor": {
          "value": 1739
        },
        "device": {
          "value": 189
        },
        "serial": "9fb43bdff866",
        "model": "Unclassified device",
        "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb1/1-9/1-9:1.0",
        "sysfs_bus_id": "1-9:1.0",
        "resources": [
          {
            "type": "baud",
            "speed": 12000000,
            "bits": 0,
            "stop_bits": 0,
            "parity": 0,
            "handshake": 0
          }
        ],
        "detail": {
          "device_class": {
            "name": "vendor_spec",
            "value": 255
          },
          "device_subclass": {
            "name": "audio_video",
            "value": 16
          },
          "device_protocol": 255,
          "interface_class": {
            "name": "vendor_spec",
            "value": 255
          },
          "interface_subclass": {
            "name": "per_interface",
            "value": 0
          },
          "interface_protocol": 0,
          "interface_number": 0,
          "interface_alternate_setting": 0
        },
        "hotplug": "usb",
        "module_alias": "usb:v06CBp00BDd0000dcFFdsc10dpFFicFFisc00ip00in00"
      }
    ],

But for some reasons we are missing the name?

brianmcgee commented 2 days ago

The nixpkgs input for numtide/hwinfo was from August. You added the change to source latest USB and PCI ids from systemd in September. I think you're seeing an out of date set of reference data.

I think #147 fixes this. Give it a try.

Mic92 commented 2 days ago

I actually have to test it on the laptop that had the issue. But I can only do this later.