public inbox for development@lists.ipfire.org
 help / color / mirror / Atom feed
* Feedback on pakfire-3 testing
@ 2025-01-10 13:51 Adolf Belka
  2025-01-10 14:00 ` Michael Tremer
  0 siblings, 1 reply; 5+ messages in thread
From: Adolf Belka @ 2025-01-10 13:51 UTC (permalink / raw)
  To: development

[-- Attachment #1: Type: text/plain, Size: 6003 bytes --]

Hi Michael,

I did a fresh git clone of the pakfire repo and built it.

Then ran builds of beep, libxcrypt and openssl. All completed successfully.

beep took 15 secs, libxcrypt 50 secs and openssl 13 mins.

In the autogen.sh part of the pakfire build I did see a couple of warnings but it didn't stop the pakfire build from completing successfully.


You should update your 'aclocal.m4' by running aclocal.
configure.ac:191: warning: AC_PROG_LEX without either yywrap or noyywrap is obsolete

parallel-tests: installing 'build-aux/test-driver'
Makefile.am:1175: warning: variable 'TESTSUITE_LDFLAGS' is defined but no program or
Makefile.am:1175: library has 'TESTSUITE' as canonical name (possible typo)


8 from 30 tests in the make check section failed.


In the package build stage for all three packages that I tested I got the following:-

sudo pakfire-builder build beep/beep.nm
  Scanning local 00:00 60/60
Could not retrieve uname for 1000: No such file or directory
Could not retrieve gname for 1000: No such file or directory
Could not retrieve uname for 1000: No such file or directory
Could not retrieve gname for 1000: No such file or directory
Could not retrieve uname for 1000: No such file or directory
Could not retrieve gname for 1000: No such file or directory
  beep-1.4.12.tar.gz 87k     87kB/s 00:01   0%
  beep-1.4.12-1.ipfire3.src 88k      0B/s 100%
Building beep-1.4.12-1.ipfire3.src (eed8a645-191c-46d4-91a5-dfc82aec9829)...


  python3-gobject3-3.46.0-1.ipfire3.x86_64 100%
#  This file is part of systemd.
#
#  systemd is free software; you can redistribute it and/or modify it
#  under the terms of the GNU Lesser General Public License as published by
#  the Free Software Foundation; either version 2.1 of the License, or
#  (at your option) any later version.

# The superuser
g root    0       -            -
u root    0:0     "Super User" /root

# The nobody user/group for NFS file systems
g nobody 65534       -            -
u nobody 65534:65534 "Kernel Overflow User"     -

# Administrator group: can *see* more than normal users
g adm     4     -            -

# Administrator group: can *do* more than normal users
g wheel   10     -            -

# Access to shared database of users on the system
g utmp    22     -            -

# Physical and virtual hardware access groups
g audio   63     -            -
g cdrom   11     -            -
g dialout 18     -            -
g disk    6     -            -
g input   104     -            -
g kmem    9     -            -
g kvm     36     -            -
g lp      7     -            -
g render  105     -            -
g sgx     106     -            -
g tape    33     -            -
g tty     5     -            -
g video   39     -            -

# Default group for normal users
g users   100     -            -
#  This file is part of systemd.
#
#  systemd is free software; you can redistribute it and/or modify it
#  under the terms of the GNU Lesser General Public License as published by
#  the Free Software Foundation; either version 2.1 of the License, or
#  (at your option) any later version.

u systemd-coredump - "systemd Core Dumper"
#  This file is part of systemd.
#
#  systemd is free software; you can redistribute it and/or modify it
#  under the terms of the GNU Lesser General Public License as published by
#  the Free Software Foundation; either version 2.1 of the License, or
#  (at your option) any later version.

g systemd-journal 190 -
#  This file is part of systemd.
#
#  systemd is free software; you can redistribute it and/or modify it
#  under the terms of the GNU Lesser General Public License as published by
#  the Free Software Foundation; either version 2.1 of the License, or
#  (at your option) any later version.

u systemd-oom - "systemd Userspace OOM Killer"
  systemd-254-3.ipfire3.x86_64 100%
*** buffer overflow detected ***: terminated
The child process terminated abnormally with status code 11
  dbus-broker-32-1.ipfire3.x86_64 100%
  uuidd-2.39.2-3.ipfire3.x86_64 100%
  setup-3.0-19.ipfire3.noarch 100%
*** buffer overflow detected ***: terminated
The child process terminated abnormally with status code 11
  sudo-1.9.14p3-2.ipfire3.x86_64 100%
*** buffer overflow detected ***: terminated
The child process terminated abnormally with status code 11
  bash-completion-2.11-1.ipfire3.noarch 100%
  filesystem-002-5.ipfire3.x86_64 0%
  groff-1.22.4-1.ipfire3.x86_64 100%
  openssh-9.4p1-1.ipfire3.x86_64 100%
  smartmontools-7.4-1.ipfire3.x86_64 100%
  mc-4.8.29-3.ipfire3.x86_64 100%
  libtool-2.4.7-2.ipfire3.x86_64 100%
  gettext-0.21.1-5.1.ipfire3.x86_64 100%
  gettext-libs-0.21.1-5.1.ipfire3.x86_64 100%
  findutils-4.9.0-1.ipfire3.x86_64 100%
  gcc-12.3.0-1.ipfire3.x86_64 100%
  gcc-c++-12.3.0-1.ipfire3.x86_64 100%
  cpp-12.3.0-1.ipfire3.x86_64 100%
  man-db-2.11.2-1.ipfire3.x86_64 100%
*** buffer overflow detected ***: terminated
The child process terminated abnormally with status code 11
  ipfire-release-build-3.0-alpha2-10.ipfire3.noarch 0%
  pakfire-0.9.29-1.ipfire3.x86_64 100%
  ipfire-release-3.0-alpha2-10.ipfire3.noarch 100%
*** buffer overflow detected ***: terminated
The child process terminated abnormally with status code 11
Running in chroot, ignoring command 'start'
Running build stage 'prepare'

I recall you saying that running a repeat of the build should result in a quicker build. I have not found that. It has stayed very similar in time in all three cases.

Regards,

Adolf.


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Feedback on pakfire-3 testing
  2025-01-10 13:51 Feedback on pakfire-3 testing Adolf Belka
@ 2025-01-10 14:00 ` Michael Tremer
  2025-01-10 14:35   ` Adolf Belka
  0 siblings, 1 reply; 5+ messages in thread
From: Michael Tremer @ 2025-01-10 14:00 UTC (permalink / raw)
  To: development

[-- Attachment #1: Type: text/plain, Size: 6822 bytes --]

Hello Adolf,

Thank you for giving this a test.

> On 10 Jan 2025, at 13:51, Adolf Belka <adolf.belka(a)ipfire.org> wrote:
> 
> Hi Michael,
> 
> I did a fresh git clone of the pakfire repo and built it.
> 
> Then ran builds of beep, libxcrypt and openssl. All completed successfully.

That is good news.

> beep took 15 secs, libxcrypt 50 secs and openssl 13 mins.

Cool. This sounds about right. The first build should have created a snapshot may so that running the second would have started much faster?

> In the autogen.sh part of the pakfire build I did see a couple of warnings but it didn't stop the pakfire build from completing successfully.
> 
> 
> You should update your 'aclocal.m4' by running aclocal.
> configure.ac:191: warning: AC_PROG_LEX without either yywrap or noyywrap is obsolete
> 
> parallel-tests: installing 'build-aux/test-driver'
> Makefile.am:1175: warning: variable 'TESTSUITE_LDFLAGS' is defined but no program or
> Makefile.am:1175: library has 'TESTSUITE' as canonical name (possible typo)

Yes, the first one I have no idea how to get rid of, the second is probably just renaming the variable.

> 8 from 30 tests in the make check section failed.

That is not right. Could you check the *.log files of the individual ones and see what is going wrong?

> In the package build stage for all three packages that I tested I got the following:-
> 
> sudo pakfire-builder build beep/beep.nm
>  Scanning local 00:00 60/60
> Could not retrieve uname for 1000: No such file or directory
> Could not retrieve gname for 1000: No such file or directory
> Could not retrieve uname for 1000: No such file or directory
> Could not retrieve gname for 1000: No such file or directory
> Could not retrieve uname for 1000: No such file or directory
> Could not retrieve gname for 1000: No such file or directory

Hmm, this is not right… As the files checked out by another user with ID 1000?

>  beep-1.4.12.tar.gz 87k     87kB/s 00:01   0%
>  beep-1.4.12-1.ipfire3.src 88k      0B/s 100%
> Building beep-1.4.12-1.ipfire3.src (eed8a645-191c-46d4-91a5-dfc82aec9829)...
> 
> 
>  python3-gobject3-3.46.0-1.ipfire3.x86_64 100%
> #  This file is part of systemd.
> #
> #  systemd is free software; you can redistribute it and/or modify it
> #  under the terms of the GNU Lesser General Public License as published by
> #  the Free Software Foundation; either version 2.1 of the License, or
> #  (at your option) any later version.
> 
> # The superuser
> g root    0       -            -
> u root    0:0     "Super User" /root
> 
> # The nobody user/group for NFS file systems
> g nobody 65534       -            -
> u nobody 65534:65534 "Kernel Overflow User"     -
> 
> # Administrator group: can *see* more than normal users
> g adm     4     -            -
> 
> # Administrator group: can *do* more than normal users
> g wheel   10     -            -
> 
> # Access to shared database of users on the system
> g utmp    22     -            -
> 
> # Physical and virtual hardware access groups
> g audio   63     -            -
> g cdrom   11     -            -
> g dialout 18     -            -
> g disk    6     -            -
> g input   104     -            -
> g kmem    9     -            -
> g kvm     36     -            -
> g lp      7     -            -
> g render  105     -            -
> g sgx     106     -            -
> g tape    33     -            -
> g tty     5     -            -
> g video   39     -            -
> 
> # Default group for normal users
> g users   100     -            -
> #  This file is part of systemd.
> #
> #  systemd is free software; you can redistribute it and/or modify it
> #  under the terms of the GNU Lesser General Public License as published by
> #  the Free Software Foundation; either version 2.1 of the License, or
> #  (at your option) any later version.
> 
> u systemd-coredump - "systemd Core Dumper"
> #  This file is part of systemd.
> #
> #  systemd is free software; you can redistribute it and/or modify it
> #  under the terms of the GNU Lesser General Public License as published by
> #  the Free Software Foundation; either version 2.1 of the License, or
> #  (at your option) any later version.
> 
> g systemd-journal 190 -
> #  This file is part of systemd.
> #
> #  systemd is free software; you can redistribute it and/or modify it
> #  under the terms of the GNU Lesser General Public License as published by
> #  the Free Software Foundation; either version 2.1 of the License, or
> #  (at your option) any later version.
> 
> u systemd-oom - "systemd Userspace OOM Killer"

This is from a systemd feature that currently seems to be very broken, I will put this on my TODO list.

>  systemd-254-3.ipfire3.x86_64 100%
> *** buffer overflow detected ***: terminated

This is also a problem inside the build environment and I believe rebuilding systemd fixes it.

> The child process terminated abnormally with status code 11
>  dbus-broker-32-1.ipfire3.x86_64 100%
>  uuidd-2.39.2-3.ipfire3.x86_64 100%
>  setup-3.0-19.ipfire3.noarch 100%
> *** buffer overflow detected ***: terminated
> The child process terminated abnormally with status code 11
>  sudo-1.9.14p3-2.ipfire3.x86_64 100%
> *** buffer overflow detected ***: terminated
> The child process terminated abnormally with status code 11
>  bash-completion-2.11-1.ipfire3.noarch 100%
>  filesystem-002-5.ipfire3.x86_64 0%
>  groff-1.22.4-1.ipfire3.x86_64 100%
>  openssh-9.4p1-1.ipfire3.x86_64 100%
>  smartmontools-7.4-1.ipfire3.x86_64 100%
>  mc-4.8.29-3.ipfire3.x86_64 100%
>  libtool-2.4.7-2.ipfire3.x86_64 100%
>  gettext-0.21.1-5.1.ipfire3.x86_64 100%
>  gettext-libs-0.21.1-5.1.ipfire3.x86_64 100%
>  findutils-4.9.0-1.ipfire3.x86_64 100%
>  gcc-12.3.0-1.ipfire3.x86_64 100%
>  gcc-c++-12.3.0-1.ipfire3.x86_64 100%
>  cpp-12.3.0-1.ipfire3.x86_64 100%
>  man-db-2.11.2-1.ipfire3.x86_64 100%
> *** buffer overflow detected ***: terminated
> The child process terminated abnormally with status code 11
>  ipfire-release-build-3.0-alpha2-10.ipfire3.noarch 0%
>  pakfire-0.9.29-1.ipfire3.x86_64 100%
>  ipfire-release-3.0-alpha2-10.ipfire3.noarch 100%
> *** buffer overflow detected ***: terminated
> The child process terminated abnormally with status code 11
> Running in chroot, ignoring command 'start'
> Running build stage 'prepare'
> 
> I recall you saying that running a repeat of the build should result in a quicker build. I have not found that. It has stayed very similar in time in all three cases.

Can you run “pakfire-build snapshot update” and see if that creates the snapshot? Maybe I didn’t fully think this through when it is being created.

-Michael

> 
> Regards,
> 
> Adolf.
> 


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Feedback on pakfire-3 testing
  2025-01-10 14:00 ` Michael Tremer
@ 2025-01-10 14:35   ` Adolf Belka
  2025-01-10 14:59     ` Adolf Belka
  2025-01-10 15:18     ` Michael Tremer
  0 siblings, 2 replies; 5+ messages in thread
From: Adolf Belka @ 2025-01-10 14:35 UTC (permalink / raw)
  To: development

[-- Attachment #1: Type: text/plain, Size: 10447 bytes --]

Hi Michael,

On 10/01/2025 15:00, Michael Tremer wrote:
> Hello Adolf,
> 
> Thank you for giving this a test.
> 
>> On 10 Jan 2025, at 13:51, Adolf Belka <adolf.belka(a)ipfire.org> wrote:
>>
>> Hi Michael,
>>
>> I did a fresh git clone of the pakfire repo and built it.
>>
>> Then ran builds of beep, libxcrypt and openssl. All completed successfully.
> 
> That is good news.
> 
>> beep took 15 secs, libxcrypt 50 secs and openssl 13 mins.
> 
> Cool. This sounds about right. The first build should have created a snapshot may so that running the second would have started much faster?
> 
>> In the autogen.sh part of the pakfire build I did see a couple of warnings but it didn't stop the pakfire build from completing successfully.
>>
>>
>> You should update your 'aclocal.m4' by running aclocal.
>> configure.ac:191: warning: AC_PROG_LEX without either yywrap or noyywrap is obsolete
>>
>> parallel-tests: installing 'build-aux/test-driver'
>> Makefile.am:1175: warning: variable 'TESTSUITE_LDFLAGS' is defined but no program or
>> Makefile.am:1175: library has 'TESTSUITE' as canonical name (possible typo)
> 
> Yes, the first one I have no idea how to get rid of, the second is probably just renaming the variable.
> 
>> 8 from 30 tests in the make check section failed.
> 
> That is not right. Could you check the *.log files of the individual ones and see what is going wrong?

Here is the fail message for each of the 8 - does make check need to be run as root? I haven't been, only the make install.

main
pakfire: pakfire_create: Could not mount tmpfs: Operation not permitted
pakfire: pakfire_free: Destroying
TESTS: ERROR: Failed assertion: pakfire_create(&pakfire, t->ctx, NULL, NULL, NULL, 0) == -EINVAL tests/libpakfire/main.c:41 test_fail

build
pakfire: pakfire_create: Could not mount tmpfs: Operation not permitted
pakfire: pakfire_free: Destroying
TESTS: ERROR: Failed assertion: pakfire_build_create(&build, t->ctx, t->config, NULL, NULL, 0) (r = -1 - Operation not permitted, errno = Operation not permitted) at tests/libpakfire/build.c:31 test_create_and_free

cgroup
pakfire: pakfire_cgroup_open: Created cgroup (root)
pakfire: __pakfire_cgroup_open: Could not create cgroup 'pakfire-test': Permission denied
TESTS: ERROR: Failed assertion: pakfire_cgroup_create(&cgroup, t->ctx, NULL, "pakfire-test", 0) (r = -13 - Permission denied, errno = Permission denied) at tests/libpakfire/cgroup.c:34 test_create_and_destroy

jail
pakfire: pakfire_jail_setup_uid_mapping: Could not map UIDs: Invalid argument
TESTS: ERROR: Failed assertion: pakfire_jail_exec_command(jail, argv, NULL, 0) == 123 tests/libpakfire/jail.c:71 test_exit_code
pakfire: pakfire_jail_free: Freeing jail at 0x590fa3a18c50

makefile
pakfire: pakfire_parser_create_package: Building package from namespace '(null)'
pakfire: pakfire_parser_create_package: EVR is empty
pakfire: pakfire_parser_create_package: Could not create package: No such file or directory
TESTS: ERROR: Failed assertion: r == 0 tests/libpakfire/makefile.c:140 test_packages

os
TESTS: running test_distro
TESTS: ERROR: Failed assertion: *distro.version || *distro.version_id tests/libpakfire/os.c:109 test_distro

util
pakfire: pakfire_create:     vendor     = Test Project
pakfire: pakfire_create:     slogan     = Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live
pakfire: pakfire_rlimit_set: RLIMIT_NOFILE set to 524288
TESTS: ERROR: Failed assertion: pakfire_mkparentdir("/test/1/file.txt", 0755) (r = -1 - Operation not permitted, errno = Permission denied) at tests/libpakfire/util.c:43 test_mkdir

package.py
DEBUG:pakfire:    vendor     = Test Project
DEBUG:pakfire:    slogan     = Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live
DEBUG:pakfire:RLIMIT_NOFILE set to 524288
F
======================================================================
FAIL: test_open (__main__.PackageTest.test_open)
----------------------------------------------------------------------
Traceback (most recent call last):
   File "/home/source/pakfire/./tests/python/package.py", line 39, in test_open
     self.assertEqual(p.groups, "Applications/System")
     ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: [] != 'Applications/System'

----------------------------------------------------------------------
Ran 1 test in 0.003s

> 
>> In the package build stage for all three packages that I tested I got the following:-
>>
>> sudo pakfire-builder build beep/beep.nm
>>   Scanning local 00:00 60/60
>> Could not retrieve uname for 1000: No such file or directory
>> Could not retrieve gname for 1000: No such file or directory
>> Could not retrieve uname for 1000: No such file or directory
>> Could not retrieve gname for 1000: No such file or directory
>> Could not retrieve uname for 1000: No such file or directory
>> Could not retrieve gname for 1000: No such file or directory
> 
> Hmm, this is not right… As the files checked out by another user with ID 1000?

I forgot to mention. uid and gid 1000 is my user that is logged in running the pakfire-builder process. It is just my normal user, nothing special.

> 
>>   beep-1.4.12.tar.gz 87k     87kB/s 00:01   0%
>>   beep-1.4.12-1.ipfire3.src 88k      0B/s 100%
>> Building beep-1.4.12-1.ipfire3.src (eed8a645-191c-46d4-91a5-dfc82aec9829)...
>>
>>
>>   python3-gobject3-3.46.0-1.ipfire3.x86_64 100%
>> #  This file is part of systemd.
>> #
>> #  systemd is free software; you can redistribute it and/or modify it
>> #  under the terms of the GNU Lesser General Public License as published by
>> #  the Free Software Foundation; either version 2.1 of the License, or
>> #  (at your option) any later version.
>>
>> # The superuser
>> g root    0       -            -
>> u root    0:0     "Super User" /root
>>
>> # The nobody user/group for NFS file systems
>> g nobody 65534       -            -
>> u nobody 65534:65534 "Kernel Overflow User"     -
>>
>> # Administrator group: can *see* more than normal users
>> g adm     4     -            -
>>
>> # Administrator group: can *do* more than normal users
>> g wheel   10     -            -
>>
>> # Access to shared database of users on the system
>> g utmp    22     -            -
>>
>> # Physical and virtual hardware access groups
>> g audio   63     -            -
>> g cdrom   11     -            -
>> g dialout 18     -            -
>> g disk    6     -            -
>> g input   104     -            -
>> g kmem    9     -            -
>> g kvm     36     -            -
>> g lp      7     -            -
>> g render  105     -            -
>> g sgx     106     -            -
>> g tape    33     -            -
>> g tty     5     -            -
>> g video   39     -            -
>>
>> # Default group for normal users
>> g users   100     -            -
>> #  This file is part of systemd.
>> #
>> #  systemd is free software; you can redistribute it and/or modify it
>> #  under the terms of the GNU Lesser General Public License as published by
>> #  the Free Software Foundation; either version 2.1 of the License, or
>> #  (at your option) any later version.
>>
>> u systemd-coredump - "systemd Core Dumper"
>> #  This file is part of systemd.
>> #
>> #  systemd is free software; you can redistribute it and/or modify it
>> #  under the terms of the GNU Lesser General Public License as published by
>> #  the Free Software Foundation; either version 2.1 of the License, or
>> #  (at your option) any later version.
>>
>> g systemd-journal 190 -
>> #  This file is part of systemd.
>> #
>> #  systemd is free software; you can redistribute it and/or modify it
>> #  under the terms of the GNU Lesser General Public License as published by
>> #  the Free Software Foundation; either version 2.1 of the License, or
>> #  (at your option) any later version.
>>
>> u systemd-oom - "systemd Userspace OOM Killer"
> 
> This is from a systemd feature that currently seems to be very broken, I will put this on my TODO list.
> 
>>   systemd-254-3.ipfire3.x86_64 100%
>> *** buffer overflow detected ***: terminated
> 
> This is also a problem inside the build environment and I believe rebuilding systemd fixes it.
> 
>> The child process terminated abnormally with status code 11
>>   dbus-broker-32-1.ipfire3.x86_64 100%
>>   uuidd-2.39.2-3.ipfire3.x86_64 100%
>>   setup-3.0-19.ipfire3.noarch 100%
>> *** buffer overflow detected ***: terminated
>> The child process terminated abnormally with status code 11
>>   sudo-1.9.14p3-2.ipfire3.x86_64 100%
>> *** buffer overflow detected ***: terminated
>> The child process terminated abnormally with status code 11
>>   bash-completion-2.11-1.ipfire3.noarch 100%
>>   filesystem-002-5.ipfire3.x86_64 0%
>>   groff-1.22.4-1.ipfire3.x86_64 100%
>>   openssh-9.4p1-1.ipfire3.x86_64 100%
>>   smartmontools-7.4-1.ipfire3.x86_64 100%
>>   mc-4.8.29-3.ipfire3.x86_64 100%
>>   libtool-2.4.7-2.ipfire3.x86_64 100%
>>   gettext-0.21.1-5.1.ipfire3.x86_64 100%
>>   gettext-libs-0.21.1-5.1.ipfire3.x86_64 100%
>>   findutils-4.9.0-1.ipfire3.x86_64 100%
>>   gcc-12.3.0-1.ipfire3.x86_64 100%
>>   gcc-c++-12.3.0-1.ipfire3.x86_64 100%
>>   cpp-12.3.0-1.ipfire3.x86_64 100%
>>   man-db-2.11.2-1.ipfire3.x86_64 100%
>> *** buffer overflow detected ***: terminated
>> The child process terminated abnormally with status code 11
>>   ipfire-release-build-3.0-alpha2-10.ipfire3.noarch 0%
>>   pakfire-0.9.29-1.ipfire3.x86_64 100%
>>   ipfire-release-3.0-alpha2-10.ipfire3.noarch 100%
>> *** buffer overflow detected ***: terminated
>> The child process terminated abnormally with status code 11
>> Running in chroot, ignoring command 'start'
>> Running build stage 'prepare'
>>
>> I recall you saying that running a repeat of the build should result in a quicker build. I have not found that. It has stayed very similar in time in all three cases.
> 
> Can you run “pakfire-build snapshot update” and see if that creates the snapshot? Maybe I didn’t fully think this through when it is being created.

That made the improvement. Now beep built in 2 seconds and libxcrypt in 35 seconds.

Regards,
Adolf.
> 
> -Michael
> 
>>
>> Regards,
>>
>> Adolf.
>>
> 


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Feedback on pakfire-3 testing
  2025-01-10 14:35   ` Adolf Belka
@ 2025-01-10 14:59     ` Adolf Belka
  2025-01-10 15:18     ` Michael Tremer
  1 sibling, 0 replies; 5+ messages in thread
From: Adolf Belka @ 2025-01-10 14:59 UTC (permalink / raw)
  To: development

[-- Attachment #1: Type: text/plain, Size: 11329 bytes --]

Hi Michael,

On 10/01/2025 15:35, Adolf Belka wrote:
> Hi Michael,
>
> On 10/01/2025 15:00, Michael Tremer wrote:
>> Hello Adolf,
>>
>> Thank you for giving this a test.
>>
>>> On 10 Jan 2025, at 13:51, Adolf Belka <adolf.belka(a)ipfire.org> wrote:
>>>
>>> Hi Michael,
>>>
>>> I did a fresh git clone of the pakfire repo and built it.
>>>
>>> Then ran builds of beep, libxcrypt and openssl. All completed successfully.
>>
>> That is good news.
>>
>>> beep took 15 secs, libxcrypt 50 secs and openssl 13 mins.
>>
>> Cool. This sounds about right. The first build should have created a snapshot may so that running the second would have started much faster?
>>
>>> In the autogen.sh part of the pakfire build I did see a couple of warnings but it didn't stop the pakfire build from completing successfully.
>>>
>>>
>>> You should update your 'aclocal.m4' by running aclocal.
>>> configure.ac:191: warning: AC_PROG_LEX without either yywrap or noyywrap is obsolete
>>>
>>> parallel-tests: installing 'build-aux/test-driver'
>>> Makefile.am:1175: warning: variable 'TESTSUITE_LDFLAGS' is defined but no program or
>>> Makefile.am:1175: library has 'TESTSUITE' as canonical name (possible typo)
>>
>> Yes, the first one I have no idea how to get rid of, the second is probably just renaming the variable.
>>
>>> 8 from 30 tests in the make check section failed.
>>
>> That is not right. Could you check the *.log files of the individual ones and see what is going wrong?
>
> Here is the fail message for each of the 8 - does make check need to be run as root? I haven't been, only the make install.
>
> main
> pakfire: pakfire_create: Could not mount tmpfs: Operation not permitted
> pakfire: pakfire_free: Destroying
> TESTS: ERROR: Failed assertion: pakfire_create(&pakfire, t->ctx, NULL, NULL, NULL, 0) == -EINVAL tests/libpakfire/main.c:41 test_fail
>
> build
> pakfire: pakfire_create: Could not mount tmpfs: Operation not permitted
> pakfire: pakfire_free: Destroying
> TESTS: ERROR: Failed assertion: pakfire_build_create(&build, t->ctx, t->config, NULL, NULL, 0) (r = -1 - Operation not permitted, errno = Operation not permitted) at tests/libpakfire/build.c:31 test_create_and_free
>
> cgroup
> pakfire: pakfire_cgroup_open: Created cgroup (root)
> pakfire: __pakfire_cgroup_open: Could not create cgroup 'pakfire-test': Permission denied
> TESTS: ERROR: Failed assertion: pakfire_cgroup_create(&cgroup, t->ctx, NULL, "pakfire-test", 0) (r = -13 - Permission denied, errno = Permission denied) at tests/libpakfire/cgroup.c:34 test_create_and_destroy
>
> jail
> pakfire: pakfire_jail_setup_uid_mapping: Could not map UIDs: Invalid argument
> TESTS: ERROR: Failed assertion: pakfire_jail_exec_command(jail, argv, NULL, 0) == 123 tests/libpakfire/jail.c:71 test_exit_code
> pakfire: pakfire_jail_free: Freeing jail at 0x590fa3a18c50
>
> makefile
> pakfire: pakfire_parser_create_package: Building package from namespace '(null)'
> pakfire: pakfire_parser_create_package: EVR is empty
> pakfire: pakfire_parser_create_package: Could not create package: No such file or directory
> TESTS: ERROR: Failed assertion: r == 0 tests/libpakfire/makefile.c:140 test_packages
>
> os
> TESTS: running test_distro
> TESTS: ERROR: Failed assertion: *distro.version || *distro.version_id tests/libpakfire/os.c:109 test_distro
>
> util
> pakfire: pakfire_create:     vendor     = Test Project
> pakfire: pakfire_create:     slogan     = Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live
> pakfire: pakfire_rlimit_set: RLIMIT_NOFILE set to 524288
> TESTS: ERROR: Failed assertion: pakfire_mkparentdir("/test/1/file.txt", 0755) (r = -1 - Operation not permitted, errno = Permission denied) at tests/libpakfire/util.c:43 test_mkdir
>
> package.py
> DEBUG:pakfire:    vendor     = Test Project
> DEBUG:pakfire:    slogan     = Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live
> DEBUG:pakfire:RLIMIT_NOFILE set to 524288
> F
> ======================================================================
> FAIL: test_open (__main__.PackageTest.test_open)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
>   File "/home/source/pakfire/./tests/python/package.py", line 39, in test_open
>     self.assertEqual(p.groups, "Applications/System")
>     ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> AssertionError: [] != 'Applications/System'
>
> ----------------------------------------------------------------------
> Ran 1 test in 0.003s
>
>>
>>> In the package build stage for all three packages that I tested I got the following:-
>>>
>>> sudo pakfire-builder build beep/beep.nm
>>>   Scanning local 00:00 60/60
>>> Could not retrieve uname for 1000: No such file or directory
>>> Could not retrieve gname for 1000: No such file or directory
>>> Could not retrieve uname for 1000: No such file or directory
>>> Could not retrieve gname for 1000: No such file or directory
>>> Could not retrieve uname for 1000: No such file or directory
>>> Could not retrieve gname for 1000: No such file or directory
>>
>> Hmm, this is not right… As the files checked out by another user with ID 1000?
>
> I forgot to mention. uid and gid 1000 is my user that is logged in running the pakfire-builder process. It is just my normal user, nothing special.
>
>>
>>>   beep-1.4.12.tar.gz 87k     87kB/s 00:01   0%
>>>   beep-1.4.12-1.ipfire3.src 88k      0B/s 100%
>>> Building beep-1.4.12-1.ipfire3.src (eed8a645-191c-46d4-91a5-dfc82aec9829)...
>>>
>>>
>>>   python3-gobject3-3.46.0-1.ipfire3.x86_64 100%
>>> #  This file is part of systemd.
>>> #
>>> #  systemd is free software; you can redistribute it and/or modify it
>>> #  under the terms of the GNU Lesser General Public License as published by
>>> #  the Free Software Foundation; either version 2.1 of the License, or
>>> #  (at your option) any later version.
>>>
>>> # The superuser
>>> g root    0       -            -
>>> u root    0:0     "Super User" /root
>>>
>>> # The nobody user/group for NFS file systems
>>> g nobody 65534       -            -
>>> u nobody 65534:65534 "Kernel Overflow User"     -
>>>
>>> # Administrator group: can *see* more than normal users
>>> g adm     4     -            -
>>>
>>> # Administrator group: can *do* more than normal users
>>> g wheel   10     -            -
>>>
>>> # Access to shared database of users on the system
>>> g utmp    22     -            -
>>>
>>> # Physical and virtual hardware access groups
>>> g audio   63     -            -
>>> g cdrom   11     -            -
>>> g dialout 18     -            -
>>> g disk    6     -            -
>>> g input   104     -            -
>>> g kmem    9     -            -
>>> g kvm     36     -            -
>>> g lp      7     -            -
>>> g render  105     -            -
>>> g sgx     106     -            -
>>> g tape    33     -            -
>>> g tty     5     -            -
>>> g video   39     -            -
>>>
>>> # Default group for normal users
>>> g users   100     -            -
>>> #  This file is part of systemd.
>>> #
>>> #  systemd is free software; you can redistribute it and/or modify it
>>> #  under the terms of the GNU Lesser General Public License as published by
>>> #  the Free Software Foundation; either version 2.1 of the License, or
>>> #  (at your option) any later version.
>>>
>>> u systemd-coredump - "systemd Core Dumper"
>>> #  This file is part of systemd.
>>> #
>>> #  systemd is free software; you can redistribute it and/or modify it
>>> #  under the terms of the GNU Lesser General Public License as published by
>>> #  the Free Software Foundation; either version 2.1 of the License, or
>>> #  (at your option) any later version.
>>>
>>> g systemd-journal 190 -
>>> #  This file is part of systemd.
>>> #
>>> #  systemd is free software; you can redistribute it and/or modify it
>>> #  under the terms of the GNU Lesser General Public License as published by
>>> #  the Free Software Foundation; either version 2.1 of the License, or
>>> #  (at your option) any later version.
>>>
>>> u systemd-oom - "systemd Userspace OOM Killer"
>>
>> This is from a systemd feature that currently seems to be very broken, I will put this on my TODO list.
>>
>>>   systemd-254-3.ipfire3.x86_64 100%
>>> *** buffer overflow detected ***: terminated
>>
>> This is also a problem inside the build environment and I believe rebuilding systemd fixes it.
>>
I rebuilt systemd and now I don't see any of these messages for any builds I am doing now.

Regards,

Adolf.

>>> The child process terminated abnormally with status code 11
>>>   dbus-broker-32-1.ipfire3.x86_64 100%
>>>   uuidd-2.39.2-3.ipfire3.x86_64 100%
>>>   setup-3.0-19.ipfire3.noarch 100%
>>> *** buffer overflow detected ***: terminated
>>> The child process terminated abnormally with status code 11
>>>   sudo-1.9.14p3-2.ipfire3.x86_64 100%
>>> *** buffer overflow detected ***: terminated
>>> The child process terminated abnormally with status code 11
>>>   bash-completion-2.11-1.ipfire3.noarch 100%
>>>   filesystem-002-5.ipfire3.x86_64 0%
>>>   groff-1.22.4-1.ipfire3.x86_64 100%
>>>   openssh-9.4p1-1.ipfire3.x86_64 100%
>>>   smartmontools-7.4-1.ipfire3.x86_64 100%
>>>   mc-4.8.29-3.ipfire3.x86_64 100%
>>>   libtool-2.4.7-2.ipfire3.x86_64 100%
>>>   gettext-0.21.1-5.1.ipfire3.x86_64 100%
>>>   gettext-libs-0.21.1-5.1.ipfire3.x86_64 100%
>>>   findutils-4.9.0-1.ipfire3.x86_64 100%
>>>   gcc-12.3.0-1.ipfire3.x86_64 100%
>>>   gcc-c++-12.3.0-1.ipfire3.x86_64 100%
>>>   cpp-12.3.0-1.ipfire3.x86_64 100%
>>>   man-db-2.11.2-1.ipfire3.x86_64 100%
>>> *** buffer overflow detected ***: terminated
>>> The child process terminated abnormally with status code 11
>>>   ipfire-release-build-3.0-alpha2-10.ipfire3.noarch 0%
>>>   pakfire-0.9.29-1.ipfire3.x86_64 100%
>>>   ipfire-release-3.0-alpha2-10.ipfire3.noarch 100%
>>> *** buffer overflow detected ***: terminated
>>> The child process terminated abnormally with status code 11
>>> Running in chroot, ignoring command 'start'
>>> Running build stage 'prepare'
>>>
>>> I recall you saying that running a repeat of the build should result in a quicker build. I have not found that. It has stayed very similar in time in all three cases.
>>
>> Can you run “pakfire-build snapshot update” and see if that creates the snapshot? Maybe I didn’t fully think this through when it is being created.
>
> That made the improvement. Now beep built in 2 seconds and libxcrypt in 35 seconds.
>
> Regards,
> Adolf.
>>
>> -Michael
>>
>>>
>>> Regards,
>>>
>>> Adolf.
>>>
>>
>

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Feedback on pakfire-3 testing
  2025-01-10 14:35   ` Adolf Belka
  2025-01-10 14:59     ` Adolf Belka
@ 2025-01-10 15:18     ` Michael Tremer
  1 sibling, 0 replies; 5+ messages in thread
From: Michael Tremer @ 2025-01-10 15:18 UTC (permalink / raw)
  To: development

[-- Attachment #1: Type: text/plain, Size: 11064 bytes --]

Hello,

> On 10 Jan 2025, at 14:35, Adolf Belka <adolf.belka(a)ipfire.org> wrote:
> 
> Hi Michael,
> 
> On 10/01/2025 15:00, Michael Tremer wrote:
>> Hello Adolf,
>> Thank you for giving this a test.
>>> On 10 Jan 2025, at 13:51, Adolf Belka <adolf.belka(a)ipfire.org> wrote:
>>> 
>>> Hi Michael,
>>> 
>>> I did a fresh git clone of the pakfire repo and built it.
>>> 
>>> Then ran builds of beep, libxcrypt and openssl. All completed successfully.
>> That is good news.
>>> beep took 15 secs, libxcrypt 50 secs and openssl 13 mins.
>> Cool. This sounds about right. The first build should have created a snapshot may so that running the second would have started much faster?
>>> In the autogen.sh part of the pakfire build I did see a couple of warnings but it didn't stop the pakfire build from completing successfully.
>>> 
>>> 
>>> You should update your 'aclocal.m4' by running aclocal.
>>> configure.ac:191: warning: AC_PROG_LEX without either yywrap or noyywrap is obsolete
>>> 
>>> parallel-tests: installing 'build-aux/test-driver'
>>> Makefile.am:1175: warning: variable 'TESTSUITE_LDFLAGS' is defined but no program or
>>> Makefile.am:1175: library has 'TESTSUITE' as canonical name (possible typo)
>> Yes, the first one I have no idea how to get rid of, the second is probably just renaming the variable.
>>> 8 from 30 tests in the make check section failed.
>> That is not right. Could you check the *.log files of the individual ones and see what is going wrong?
> 
> Here is the fail message for each of the 8 - does make check need to be run as root? I haven't been, only the make install.

Yes, some tests require root. It would be better to automatically disable them if they are not being run as root, but I didn’t have time to implement this, yet.

> main
> pakfire: pakfire_create: Could not mount tmpfs: Operation not permitted
> pakfire: pakfire_free: Destroying
> TESTS: ERROR: Failed assertion: pakfire_create(&pakfire, t->ctx, NULL, NULL, NULL, 0) == -EINVAL tests/libpakfire/main.c:41 test_fail
> 
> build
> pakfire: pakfire_create: Could not mount tmpfs: Operation not permitted
> pakfire: pakfire_free: Destroying
> TESTS: ERROR: Failed assertion: pakfire_build_create(&build, t->ctx, t->config, NULL, NULL, 0) (r = -1 - Operation not permitted, errno = Operation not permitted) at tests/libpakfire/build.c:31 test_create_and_free
> 
> cgroup
> pakfire: pakfire_cgroup_open: Created cgroup (root)
> pakfire: __pakfire_cgroup_open: Could not create cgroup 'pakfire-test': Permission denied
> TESTS: ERROR: Failed assertion: pakfire_cgroup_create(&cgroup, t->ctx, NULL, "pakfire-test", 0) (r = -13 - Permission denied, errno = Permission denied) at tests/libpakfire/cgroup.c:34 test_create_and_destroy
> 
> jail
> pakfire: pakfire_jail_setup_uid_mapping: Could not map UIDs: Invalid argument
> TESTS: ERROR: Failed assertion: pakfire_jail_exec_command(jail, argv, NULL, 0) == 123 tests/libpakfire/jail.c:71 test_exit_code
> pakfire: pakfire_jail_free: Freeing jail at 0x590fa3a18c50
> 
> makefile
> pakfire: pakfire_parser_create_package: Building package from namespace '(null)'
> pakfire: pakfire_parser_create_package: EVR is empty
> pakfire: pakfire_parser_create_package: Could not create package: No such file or directory
> TESTS: ERROR: Failed assertion: r == 0 tests/libpakfire/makefile.c:140 test_packages
> 
> os
> TESTS: running test_distro
> TESTS: ERROR: Failed assertion: *distro.version || *distro.version_id tests/libpakfire/os.c:109 test_distro
> 
> util
> pakfire: pakfire_create:     vendor     = Test Project
> pakfire: pakfire_create:     slogan     = Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live
> pakfire: pakfire_rlimit_set: RLIMIT_NOFILE set to 524288
> TESTS: ERROR: Failed assertion: pakfire_mkparentdir("/test/1/file.txt", 0755) (r = -1 - Operation not permitted, errno = Permission denied) at tests/libpakfire/util.c:43 test_mkdir
> 
> package.py
> DEBUG:pakfire:    vendor     = Test Project
> DEBUG:pakfire:    slogan     = Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live
> DEBUG:pakfire:RLIMIT_NOFILE set to 524288
> F
> ======================================================================
> FAIL: test_open (__main__.PackageTest.test_open)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
>  File "/home/source/pakfire/./tests/python/package.py", line 39, in test_open
>    self.assertEqual(p.groups, "Applications/System")
>    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> AssertionError: [] != 'Applications/System'
> 
> ----------------------------------------------------------------------
> Ran 1 test in 0.003s

This is an actual error.

>>> In the package build stage for all three packages that I tested I got the following:-
>>> 
>>> sudo pakfire-builder build beep/beep.nm
>>>  Scanning local 00:00 60/60
>>> Could not retrieve uname for 1000: No such file or directory
>>> Could not retrieve gname for 1000: No such file or directory
>>> Could not retrieve uname for 1000: No such file or directory
>>> Could not retrieve gname for 1000: No such file or directory
>>> Could not retrieve uname for 1000: No such file or directory
>>> Could not retrieve gname for 1000: No such file or directory
>> Hmm, this is not right… As the files checked out by another user with ID 1000?
> 
> I forgot to mention. uid and gid 1000 is my user that is logged in running the pakfire-builder process. It is just my normal user, nothing special.

Okay, but we can fix this. We don’t care about the owner of the file in a source package at all.

> 
>>>  beep-1.4.12.tar.gz 87k     87kB/s 00:01   0%
>>>  beep-1.4.12-1.ipfire3.src 88k      0B/s 100%
>>> Building beep-1.4.12-1.ipfire3.src (eed8a645-191c-46d4-91a5-dfc82aec9829)...
>>> 
>>> 
>>>  python3-gobject3-3.46.0-1.ipfire3.x86_64 100%
>>> #  This file is part of systemd.
>>> #
>>> #  systemd is free software; you can redistribute it and/or modify it
>>> #  under the terms of the GNU Lesser General Public License as published by
>>> #  the Free Software Foundation; either version 2.1 of the License, or
>>> #  (at your option) any later version.
>>> 
>>> # The superuser
>>> g root    0       -            -
>>> u root    0:0     "Super User" /root
>>> 
>>> # The nobody user/group for NFS file systems
>>> g nobody 65534       -            -
>>> u nobody 65534:65534 "Kernel Overflow User"     -
>>> 
>>> # Administrator group: can *see* more than normal users
>>> g adm     4     -            -
>>> 
>>> # Administrator group: can *do* more than normal users
>>> g wheel   10     -            -
>>> 
>>> # Access to shared database of users on the system
>>> g utmp    22     -            -
>>> 
>>> # Physical and virtual hardware access groups
>>> g audio   63     -            -
>>> g cdrom   11     -            -
>>> g dialout 18     -            -
>>> g disk    6     -            -
>>> g input   104     -            -
>>> g kmem    9     -            -
>>> g kvm     36     -            -
>>> g lp      7     -            -
>>> g render  105     -            -
>>> g sgx     106     -            -
>>> g tape    33     -            -
>>> g tty     5     -            -
>>> g video   39     -            -
>>> 
>>> # Default group for normal users
>>> g users   100     -            -
>>> #  This file is part of systemd.
>>> #
>>> #  systemd is free software; you can redistribute it and/or modify it
>>> #  under the terms of the GNU Lesser General Public License as published by
>>> #  the Free Software Foundation; either version 2.1 of the License, or
>>> #  (at your option) any later version.
>>> 
>>> u systemd-coredump - "systemd Core Dumper"
>>> #  This file is part of systemd.
>>> #
>>> #  systemd is free software; you can redistribute it and/or modify it
>>> #  under the terms of the GNU Lesser General Public License as published by
>>> #  the Free Software Foundation; either version 2.1 of the License, or
>>> #  (at your option) any later version.
>>> 
>>> g systemd-journal 190 -
>>> #  This file is part of systemd.
>>> #
>>> #  systemd is free software; you can redistribute it and/or modify it
>>> #  under the terms of the GNU Lesser General Public License as published by
>>> #  the Free Software Foundation; either version 2.1 of the License, or
>>> #  (at your option) any later version.
>>> 
>>> u systemd-oom - "systemd Userspace OOM Killer"
>> This is from a systemd feature that currently seems to be very broken, I will put this on my TODO list.
>>>  systemd-254-3.ipfire3.x86_64 100%
>>> *** buffer overflow detected ***: terminated
>> This is also a problem inside the build environment and I believe rebuilding systemd fixes it.
>>> The child process terminated abnormally with status code 11
>>>  dbus-broker-32-1.ipfire3.x86_64 100%
>>>  uuidd-2.39.2-3.ipfire3.x86_64 100%
>>>  setup-3.0-19.ipfire3.noarch 100%
>>> *** buffer overflow detected ***: terminated
>>> The child process terminated abnormally with status code 11
>>>  sudo-1.9.14p3-2.ipfire3.x86_64 100%
>>> *** buffer overflow detected ***: terminated
>>> The child process terminated abnormally with status code 11
>>>  bash-completion-2.11-1.ipfire3.noarch 100%
>>>  filesystem-002-5.ipfire3.x86_64 0%
>>>  groff-1.22.4-1.ipfire3.x86_64 100%
>>>  openssh-9.4p1-1.ipfire3.x86_64 100%
>>>  smartmontools-7.4-1.ipfire3.x86_64 100%
>>>  mc-4.8.29-3.ipfire3.x86_64 100%
>>>  libtool-2.4.7-2.ipfire3.x86_64 100%
>>>  gettext-0.21.1-5.1.ipfire3.x86_64 100%
>>>  gettext-libs-0.21.1-5.1.ipfire3.x86_64 100%
>>>  findutils-4.9.0-1.ipfire3.x86_64 100%
>>>  gcc-12.3.0-1.ipfire3.x86_64 100%
>>>  gcc-c++-12.3.0-1.ipfire3.x86_64 100%
>>>  cpp-12.3.0-1.ipfire3.x86_64 100%
>>>  man-db-2.11.2-1.ipfire3.x86_64 100%
>>> *** buffer overflow detected ***: terminated
>>> The child process terminated abnormally with status code 11
>>>  ipfire-release-build-3.0-alpha2-10.ipfire3.noarch 0%
>>>  pakfire-0.9.29-1.ipfire3.x86_64 100%
>>>  ipfire-release-3.0-alpha2-10.ipfire3.noarch 100%
>>> *** buffer overflow detected ***: terminated
>>> The child process terminated abnormally with status code 11
>>> Running in chroot, ignoring command 'start'
>>> Running build stage 'prepare'
>>> 
>>> I recall you saying that running a repeat of the build should result in a quicker build. I have not found that. It has stayed very similar in time in all three cases.
>> Can you run “pakfire-build snapshot update” and see if that creates the snapshot? Maybe I didn’t fully think this through when it is being created.
> 
> That made the improvement. Now beep built in 2 seconds and libxcrypt in 35 seconds.

2 seconds is what I am aiming for :)

> 
> Regards,
> Adolf.
>> -Michael
>>> 
>>> Regards,
>>> 
>>> Adolf.



^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2025-01-10 15:18 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-01-10 13:51 Feedback on pakfire-3 testing Adolf Belka
2025-01-10 14:00 ` Michael Tremer
2025-01-10 14:35   ` Adolf Belka
2025-01-10 14:59     ` Adolf Belka
2025-01-10 15:18     ` Michael Tremer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox