Page MenuHomeFreeBSD

sysutils/smartmontools: Update to 7.1
ClosedPublic

Authored by diizzy on Jan 9 2020, 9:06 AM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Mar 29, 3:01 PM
Unknown Object (File)
Jan 17 2024, 2:27 PM
Unknown Object (File)
Dec 31 2023, 11:05 PM
Unknown Object (File)
Dec 26 2023, 10:07 PM
Unknown Object (File)
Dec 23 2023, 7:08 PM
Unknown Object (File)
Dec 23 2023, 7:08 PM
Unknown Object (File)
Dec 23 2023, 7:08 PM
Unknown Object (File)
Dec 23 2023, 11:52 AM
Subscribers

Details

Summary

Update to smartmontools 7.1

Remove upstreamed patches
Remove gmake dependency
Remove drivedb update binary as it will modify tracked file drivedb.h

Test Plan

Build and run-time tested on 13-CURRENT (r356392)
Poudriere log{F6031662}

Diff Detail

Repository
rP FreeBSD ports repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

jrm added inline comments.
sysutils/smartmontools/Makefile
25–26 ↗(On Diff #66541)

Could you give a brief summary describing why these were removed?

Oh, I see you did say Remove drivedb update binary as it will modify tracked files. Could you explain a bit what this means for someone not so familiar with the details here?

diizzy added inline comments.
sysutils/smartmontools/Makefile
25–26 ↗(On Diff #66541)

"GnuPG used to verify drivedb.h"
https://www.smartmontools.org/browser/trunk/smartmontools/configure.ac
Since we're not going to download (and update) drivedb.h I added it to avoid pulling in gnupg.

This revision was not accepted when it landed; it landed in state Needs Review.Mar 2 2020, 2:23 AM
This revision was automatically updated to reflect the committed changes.

Just found that. Do you really think that removing drive db updater was a good idea? You just removed important package functionality w/o any alternatives.

Going to revert that.

In D23101#645192, @samm wrote:

Just found that. Do you really think that removing drive db updater was a good idea? You just removed important package functionality w/o any alternatives.

Going to revert that.

Daniel described why it was removed. Why ask if you are going to unilaterally revert?

From https://www.smartmontools.org/wiki/Download

Update the drive database

The drive database file drivedb.h can be updated separately with the following command:

sudo /usr/sbin/update-smart-drivedb

This command uses ​curl, ​wget or ​lynx for download. A proxy server can be specified by the environment variable https_proxy (lower case only), see the man pages of the tools for details.

The downloaded file is verified with OpenPGP/GPG key ID 721042C5 (release 6.6: DFD22559).

The public key block is included in the script​. It is also available at ​Key Servers (​release 6.6) but there is no need to import it into a local keyring.

Would it make more sense to just bump PORTREVISION when necessary with a new driverdb.h?

In D23101#645203, @jrm wrote:
In D23101#645192, @samm wrote:

Just found that. Do you really think that removing drive db updater was a good idea? You just removed important package functionality w/o any alternatives.

Going to revert that.

Daniel described why it was removed. Why ask if you are going to unilaterally revert?

Because it is breaking part of the package functionality.

I am thinking to re-add it in correct way and probably i need to do post-install of copying drivedb.h.dist to drivedb.h which is not tracked and could be updated. However, just removing part of the program without providing any alternative is a very bad idea. Moreover, in fact when it was here worst thing was checksum failure on removal. What is bad but not critical. After removal there is no updater at all and there is no way to update drive db. Very nice change :-/

In D23101#645216, @jrm wrote:

From https://www.smartmontools.org/wiki/Download

Update the drive database

The drive database file drivedb.h can be updated separately with the following command:

sudo /usr/sbin/update-smart-drivedb

This command uses ​curl, ​wget or ​lynx for download. A proxy server can be specified by the environment variable https_proxy (lower case only), see the man pages of the tools for details.

The downloaded file is verified with OpenPGP/GPG key ID 721042C5 (release 6.6: DFD22559).

The public key block is included in the script​. It is also available at ​Key Servers (​release 6.6) but there is no need to import it into a local keyring.

Would it make more sense to just bump PORTREVISION when necessary with a new driverdb.h?

Drivedb is updated regularly. I see very little sense to update package every time when it happens. Also it will not help to the users who using pkg, as package are not rebuild thats often.

Very nice change :-/

It's fine if you disagree. As maintainer you have a final say, but these petty insults serve little purpose. You also had nearly two months to review the change, but were an absent maintainer.

In D23101#645216, @jrm wrote:

From https://www.smartmontools.org/wiki/Download

Update the drive database

The drive database file drivedb.h can be updated separately with the following command:

sudo /usr/sbin/update-smart-drivedb

This command uses ​curl, ​wget or ​lynx for download. A proxy server can be specified by the environment variable https_proxy (lower case only), see the man pages of the tools for details.

The downloaded file is verified with OpenPGP/GPG key ID 721042C5 (release 6.6: DFD22559).

The public key block is included in the script​. It is also available at ​Key Servers (​release 6.6) but there is no need to import it into a local keyring.

Would it make more sense to just bump PORTREVISION when necessary with a new driverdb.h?

I think @sample macro doing exactly what we are looking for. If user not touching drivedb.h it will be updated or removed by pkg. If he is using updater or changing it manually - pkg will not touch it. Again, i am fine with a problem found, but resolution is just weird. Instead of solving problem we introduced bigger one.

Packages are supposed to be static and breaking packages because upstream supports self-updating is a no go, we do remove such functionality to avoid foot-shooting in general (netdata, youtube-dl/dlc etc). The only files that are allowed to be modified are @sample but that would be an ugly hack and a violation. What jrm@ suggested is what we previously did to avoid this issue see https://svnweb.freebsd.org/ports?view=revision&revision=552052

In D23101#645221, @daniel.engberg.lists_pyret.net wrote:

Packages are supposed to be static and breaking packages because upstream supports self-updating is a no go, we do remove such functionality to avoid foot-shooting in general (netdata, youtube-dl/dlc etc). The only files that are allowed to be modified are @sample but that would be an ugly hack and a violation. What jrm@ suggested is what we previously did to avoid this issue see https://svnweb.freebsd.org/ports?view=revision&revision=552052

  1. Updating entire package due to one file change to me looks like a bad design. Especially on arch like arm32 where pkg builds are very non regular. Not taking the fact that this will require me to update package every time upstream is changing drivedb (happens few times per month at least). Also drivedb.h is a configuration, not binary. If you want to track such changes and update portrev every time i am ok with that, but i think its not the case.
  2. This functionality was here from day 1, and there were no any objections against it. Today i got a report from freebsd user who found that it is broken. It also makes smartmontools package on bsd more limited compared to other OS.
  3. I am okay with @sample hack and sure that it is better compared to just removing functionality which users are using.
In D23101#645221, @daniel.engberg.lists_pyret.net wrote:

Packages are supposed to be static and breaking packages because upstream supports self-updating is a no go, we do remove such functionality to avoid foot-shooting in general (netdata, youtube-dl/dlc etc). The only files that are allowed to be modified are @sample but that would be an ugly hack and a violation. What jrm@ suggested is what we previously did to avoid this issue see https://svnweb.freebsd.org/ports?view=revision&revision=552052

we also do have a lot of packages fetching some data from the internet and storing it locally. No idea what makes smartmontools different here.