stanislav-tkach / os_info

Rust library to detect the operating system type
MIT License
175 stars 52 forks source link

Add support for DragonFly BSD #256

Closed kraileth closed 3 years ago

kraileth commented 3 years ago

As DragonFly BSD is pretty similar to FreeBSD regarding what os_info needs to know, I gave adding it a try. This PR is basically copy 'n' paste with one very minor change (the OS is 64-bit only). All the actual work was done by wahjava for the FreeBSD support that I used as the reference for this.

Cargo compiles the source and the output of the cli tool on a machine running DF is as expected. However I cannot judge if the code requires more changes to be acceptable, I don't have any actual coding skills and am not familiar with developing in Rust.

stanislav-tkach commented 3 years ago

I would like to release a new version with this fix (https://github.com/stanislav-tkach/os_info/pull/259), but I have also made some refactoring along the way. Could you please check the release branch?

stanislav-tkach commented 3 years ago

@kraileth I have released the 3.0.3 version.

kraileth commented 3 years ago

@stanislav-tkach Sorry, didn't see this before you released it. Just tested 3.0.3 on FreeBSD and it worked as expected. However on DragonFly it does not build. I'm getting this error:

  Compiling os_info v3.0.3 (/home/kraileth/git/os_info/os_info)
error[E0425]: cannot find function 'get' in module 'bitness'
  ==> os_info/src/dragonfly/mod.rs:17:27
    |
17  |               bitness: bitness::get(),
    |                                 ^^^ not found in 'bitness'
stanislav-tkach commented 3 years ago

@kraileth Thank you. I have released the 3.0.4 version to fix this issue.