tuna-f1sh / cyme

List system USB buses and devices. A modern cross-platform lsusb that attempts to maintain compatibility with, but also add new features
GNU General Public License v3.0
696 stars 13 forks source link

unable to install on fedora #36

Open MNS26 opened 1 month ago

MNS26 commented 1 month ago

im running into a dependency issue trying to install the deb package. i get the following message when installing

❯ dpkg -i ./cyme-v1.8.4-1-amd64.deb
dpkg: error: requested operation requires superuser privilege
❯ sudo !!
sudo dpkg -i ./cyme-v1.8.4-1-amd64.deb
Selecting previously unselected package cyme.
(Reading database ... 0 files and directories currently installed.)
Preparing to unpack ./cyme-v1.8.4-1-amd64.deb ...
Unpacking cyme (1.8.4-1) ...
dpkg: dependency problems prevent configuration of cyme:
 cyme depends on libc6 (>= 2.34); however:
  Package libc6 is not installed.
 cyme depends on libusb-1.0-0 (>= 2:1.0.16); however:
  Package libusb-1.0-0 is not installed.

dpkg: error processing package cyme (--install):
 dependency problems - leaving unconfigured
Errors were encountered while processing:
 cyme

i dont find anything searching for libc6

❯ dnf search libc6
Last metadata expiration check: 23 days, 14:59:06 ago on Sat 14 Sep 2024 07:15:21 PM CEST.
No matches found.
noah@fedora ~ ❯   

i do find packages for libusb but not libusb itself

❯ dnf search libusb
============================== Name & Summary Matched: libusb ==============================
libusb-compat-0.1.x86_64 : Compatibility shim around libusb-1.0 offering the old 0.1 API
libusb-compat-0.1.i686 : Compatibility shim around libusb-1.0 offering the old 0.1 API
libusb-compat-0.1-devel.i686 : Development files for libusb-compat-0.1
libusb-compat-0.1-devel.x86_64 : Development files for libusb-compat-0.1
libusb-compat-0.1-tests-examples.x86_64 : Tests and examples for libusb-compat-0.1
libusb1-devel.x86_64 : Development files for libusb1
libusb1-devel.i686 : Development files for libusb1
libusb1-devel-doc.noarch : Development files for libusb1
libusb1-tests-examples.x86_64 : Tests and examples for libusb1
libusbg-devel.i686 : Development package for libusbg
libusbg-devel.x86_64 : Development package for libusbg
libusbmuxd-devel.i686 : Development package for libusbmuxd
libusbmuxd-devel.x86_64 : Development package for libusbmuxd
python3-libusb1.noarch : Pure-python wrapper for libusb-1.0
rust-libusb1-sys+default-devel.noarch : FFI bindings for libusb
rust-libusb1-sys-devel.noarch : FFI bindings for libusb
=================================== Name Matched: libusb ===================================
libusb1.x86_64 : Library for accessing USB devices
libusb1.i686 : Library for accessing USB devices
libusbauth-configparser.i686 : Library for USB Firewall including flex/bison parser
libusbauth-configparser.x86_64 : Library for USB Firewall including flex/bison parser
libusbauth-configparser-devel.i686 : Development part of library for USB Firewall including
                                   : flex/bison parser
libusbauth-configparser-devel.x86_64 : Development part of library for USB Firewall
                                     : including flex/bison parser
libusbg.i686 : Library for USB gadget-configfs userspace functionality
libusbg.x86_64 : Library for USB gadget-configfs userspace functionality
libusbg-utils.x86_64 : Utilities for USB gadget devices
libusbmuxd.x86_64 : Client library USB multiplex daemon for Apple's iOS devices
libusbmuxd.i686 : Client library USB multiplex daemon for Apple's iOS devices
libusbmuxd-utils.x86_64 : Utilities for communicating with Apple's iOS devices
mingw32-libusbx.noarch : MinGW library which allows userspace access to USB devices
mingw32-libusbx-static.noarch : MinGW static library which allows userspace access to USB
                              : devices
mingw64-libusbx.noarch : MinGW library which allows userspace access to USB devices
mingw64-libusbx-static.noarch : MinGW static library which allows userspace access to USB
                              : devices
rust-hidapi+linux-shared-libusb-devel.noarch : Rust-y wrapper around hidapi
================================= Summary Matched: libusb ==================================
golang-github-google-gousb-devel.noarch : Idiomatic Go bindings for libusb-1.0
libgusb.x86_64 : GLib wrapper around libusb1
libgusb.i686 : GLib wrapper around libusb1
python3-pyusb.noarch : Python bindings for libusb
usbrelay-devel.i686 : Package for developing against libusbrelay
usbrelay-devel.x86_64 : Package for developing against libusbrelay
noah@fedora ~ ❯

if i run install for libusb it goes for libusb-compat

❯ sudo dnf install libusb
Last metadata expiration check: 3:25:55 ago on Tue 08 Oct 2024 06:51:48 AM CEST.
Package libusb-compat-0.1-0.1.8-7.fc40.x86_64 is already installed.
Dependencies resolved.
Nothing to do.
Complete!
noah@fedora ~ ❯  

maybe im missing something obvious?

tuna-f1sh commented 1 month ago

The dependencies are generated by cargo-deb - it auto populates based on the Cargo.toml dependencies. I don't personally use Debian (but have tested .deb to check it works) or Fedora. I can only assume that the package names are different between Debian and Fedora.

I don't know if there is a similar tool for Fedora builds or whether you can somehow override the dependency check? Otherwise #26 will remove the libusb dependency, hopefully libc too.