Re: pkgbase checksums

From: Rosenke <rosenke_at_dssgmbh.de>
Date: Mon, 24 Jan 2022 14:11:52 UTC

On 21.01.22 19:49, Baptiste Daroussin wrote:
> 17 janv. 2022 16:22:31 Rosenke <rosenke@dssgmbh.de>:
>
>> On 17.01.22 16:20, Baptiste Daroussin wrote:
>>> On Mon, Jan 17, 2022 at 04:17:46PM +0100, Rosenke wrote:
>>>> On 17.01.22 16:12, Rosenke wrote:
>>>>> On 13.01.22 13:57, Baptiste Daroussin wrote:
>>>>>> On Thu, Jan 13, 2022 at 11:33:55AM +0100, Stefan Esser wrote:
>>>>>>> …
>>>>>> We have @config for base were pkg will do a 3 way merge, just those
>>>>>> files are
>>>>>> probably not marked as @config and should.
>>>>>>
>>>>>> (@config is native while @sample is external and define only in the
>>>>>> ports tree)
>>>>>>
>>>>>> if they are marked as such, then it means we have a bug in pkg
>>>>>> checksum as it
>>>>>> should not check the checksum of the files marked @config
>>>>>>
>>>>>> Best regards,
>>>>>> Bapt
>>>>> I tried it again with pkg 1.17.5 and FreeBSD 12.3 packages but got the
>>>>> same Error. The @config section is included in the packages:
>>>>> pkg info -R FreeBSD-clibs
>>>>> config: [
>>>>>      "/etc/nsswitch.conf",
>>>>>      "/etc/libmap.conf",
>>>>>      "/etc/hosts",
>>>>>      "/etc/protocols",
>>>>>      "/etc/netconfig",
>>>>>      "/etc/hosts.equiv",
>>>>>      "/etc/rpc",
>>>>>      "/etc/mac.conf",
>>>>>      "/etc/shells",
>>>>>      "/etc/networks"
>>>>> ]
>>>>>
>>>>> In total these are now 9 cheksum mismatches in the pkgbase jail:
>>>>> === root@dsssrvt4j1 (pts/2) ~ 19(3) -> pkg check -sa
>>>>> Checking all packages:   1%
>>>>> FreeBSD-clibs-12.2.s20220114103031: checksum mismatch for /etc/hosts
>>>>> FreeBSD-clibs-12.2.s20220114103031: checksum mismatch for /etc/shells
>>>>> Checking all packages:  78%
>>>>> FreeBSD-runtime-12.2.s20220114103031: checksum mismatch for /.profile
>>>>> FreeBSD-runtime-12.2.s20220114103031: checksum mismatch for
>>>>> /etc/locate.rc
>>>>> FreeBSD-runtime-12.2.s20220114103031: checksum mismatch for
>>>>> /etc/login.conf
>>>>> FreeBSD-runtime-12.2.s20220114103031: checksum mismatch for
>>>>> /etc/sysctl.conf
>>>>> FreeBSD-runtime-12.2.s20220114103031: checksum mismatch for
>>>>> /etc/syslog.conf
>>>>> FreeBSD-runtime-12.2.s20220114103031: checksum mismatch for /etc/ttys
>>>>> FreeBSD-runtime-12.2.s20220114103031: checksum mismatch for
>>>>> /root/.profile
>>>>> Checking all packages: 100%
>>>>>
>>>> Whoops,  copied the wrong output:
>>>> === root@dsssrvt4j1 (pts/1) ~ 1(3) -> pkg check -sa
>>>> Checking all packages:   1%
>>>> FreeBSD-clibs-12.3.s20220117084939: checksum mismatch for /etc/hosts
>>>> FreeBSD-clibs-12.3.s20220117084939: checksum mismatch for /etc/shells
>>>> Checking all packages:  78%
>>>> FreeBSD-runtime-12.3.s20220117084939: checksum mismatch for /etc/locate.rc
>>>> FreeBSD-runtime-12.3.s20220117084939: checksum mismatch for /etc/login.conf
>>>> FreeBSD-runtime-12.3.s20220117084939: checksum mismatch for /etc/motd
>>>> FreeBSD-runtime-12.3.s20220117084939: checksum mismatch for /etc/sysctl.conf
>>>> FreeBSD-runtime-12.3.s20220117084939: checksum mismatch for /etc/syslog.conf
>>>> FreeBSD-runtime-12.3.s20220117084939: checksum mismatch for /etc/ttys
>>>> Checking all packages: 100%
>>>>
>>> Here we are ;), the bug is on my side then :D, we pkg devs (I said we because
>>> maybe manu will be faster than me on this) will dive in the code and fix.
>>>
>>> Best regards
>>> Bapt
>> Thank you very much. The concept of pkgbase is great, loving it on jails with zfs so far.
>>
>> --
>> Mit freundlichen Grüßen
>> Henrik Rosenke / Operating
>>
>> Data-Service GmbH
>> Beethovenstr. 2a
>> 23617 Stockelsdorf
>> Tel. +49 451/49001-34       Fax. +49 451/49001-26
>> Email:rosenke@dssgmbh.de  /www.dssgmbh.de
>>
>> Amtsgericht Lübeck, HRB 318 BS
>> Geschäftsführer: Wilfried Paepcke, Dr. Andreas Longwitz,
>>                    Dr. Hans-Martin Rasch, Dr. Uwe Szyszka
> Fixed in git
>
> Bapt
Thanks, when will the next pkg Version be released?
Tried to manually port back the change in pkg.c but 1.17.5 is missing 
the whole hashing structure and i dont want to port back all of this.

[00:01:17] pkg.c:1522:7: error: implicit declaration of function 
'pkghash_get_value' is invalid in C99 
[-Werror,-Wimplicit-function-declaration]
[00:01:17] pkghash_get_value(pkg->config_files_hash, f->path) == NULL) {
[00:01:17]                     ^
[00:01:17] pkg.c:1522:30: error: no member named 'config_files_hash' in 
'struct pkg'; did you mean 'config_files'?
[00:01:17] pkghash_get_value(pkg->config_files_hash, f->path) == NULL) {
[00:01:17] ^~~~~~~~~~~~~~~~~
[00:01:17]                                            config_files


-- 
Mit freundlichen Grüßen
Henrik Rosenke / Operating

Data-Service GmbH
Beethovenstr. 2a
23617 Stockelsdorf
Tel. +49 451/49001-34       Fax. +49 451/49001-26
Email:rosenke@dssgmbh.de  /www.dssgmbh.de

Amtsgericht Lübeck, HRB 318 BS
Geschäftsführer: Wilfried Paepcke, Dr. Andreas Longwitz,
                  Dr. Hans-Martin Rasch, Dr. Uwe Szyszka