From mboxrd@z Thu Jan 1 00:00:00 1970 From: Adolf Belka To: development@lists.ipfire.org Subject: Re: Feedback on pakfire-3 testing Date: Fri, 10 Jan 2025 15:59:22 +0100 Message-ID: <3490b1aa-f7dd-44f2-b748-3b2808176eca@ipfire.org> In-Reply-To: <8afa9a01-cfdd-4ad2-8a27-8d42e8551814@ipfire.org> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============6675006480089430235==" List-Id: --===============6675006480089430235== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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 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 successfull= y. >> >> 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 snaps= hot 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 warning= s 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 typ= o) >> >> Yes, the first one I have no idea how to get rid of, the second is probabl= y 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) =3D=3D -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->con= fig, NULL, NULL, 0) (r =3D -1 - Operation not permitted, errno =3D 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': Per= mission denied > TESTS: ERROR: Failed assertion: pakfire_cgroup_create(&cgroup, t->ctx, NULL= , "pakfire-test", 0) (r =3D -13 - Permission denied, errno =3D Permission den= ied) at tests/libpakfire/cgroup.c:34 test_create_and_destroy > > jail > pakfire: pakfire_jail_setup_uid_mapping: Could not map UIDs: Invalid argume= nt > TESTS: ERROR: Failed assertion: pakfire_jail_exec_command(jail, argv, NULL,= 0) =3D=3D 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 '(n= ull)' > pakfire: pakfire_parser_create_package: EVR is empty > pakfire: pakfire_parser_create_package: Could not create package: No such f= ile or directory > TESTS: ERROR: Failed assertion: r =3D=3D 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:=C2=A0=C2=A0=C2=A0=C2=A0 vendor=C2=A0=C2=A0=C2=A0= =C2=A0 =3D Test Project > pakfire: pakfire_create:=C2=A0=C2=A0=C2=A0=C2=A0 slogan=C2=A0=C2=A0=C2=A0= =C2=A0 =3D Always code as if the guy who ends up maintaining your code will b= e 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", 075= 5) (r =3D -1 - Operation not permitted, errno =3D Permission denied) at tests= /libpakfire/util.c:43 test_mkdir > > package.py > DEBUG:pakfire:=C2=A0=C2=A0=C2=A0 vendor=C2=A0=C2=A0=C2=A0=C2=A0 =3D Test Pr= oject > DEBUG:pakfire:=C2=A0=C2=A0=C2=A0 slogan=C2=A0=C2=A0=C2=A0=C2=A0 =3D Always = code as if the guy who ends up maintaining your code will be a violent psycho= path who knows where you live > DEBUG:pakfire:RLIMIT_NOFILE set to 524288 > F > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > FAIL: test_open (__main__.PackageTest.test_open) > ---------------------------------------------------------------------- > Traceback (most recent call last): > =C2=A0 File "/home/source/pakfire/./tests/python/package.py", line 39, in t= est_open > =C2=A0=C2=A0=C2=A0 self.assertEqual(p.groups, "Applications/System") > =C2=A0=C2=A0=C2=A0 ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > AssertionError: [] !=3D '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 >>> =C2=A0 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=E2=80=A6 As the files checked out by another user w= ith 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. > >> >>> =C2=A0 beep-1.4.12.tar.gz 87k=C2=A0=C2=A0=C2=A0=C2=A0 87kB/s 00:01=C2=A0= =C2=A0 0% >>> =C2=A0 beep-1.4.12-1.ipfire3.src 88k=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 0B/s 1= 00% >>> Building beep-1.4.12-1.ipfire3.src (eed8a645-191c-46d4-91a5-dfc82aec9829)= ... >>> >>> >>> =C2=A0 python3-gobject3-3.46.0-1.ipfire3.x86_64 100% >>> #=C2=A0 This file is part of systemd. >>> # >>> #=C2=A0 systemd is free software; you can redistribute it and/or modify it >>> #=C2=A0 under the terms of the GNU Lesser General Public License as publi= shed by >>> #=C2=A0 the Free Software Foundation; either version 2.1 of the License, = or >>> #=C2=A0 (at your option) any later version. >>> >>> # The superuser >>> g root=C2=A0=C2=A0=C2=A0 0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 -=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 - >>> u root=C2=A0=C2=A0=C2=A0 0:0=C2=A0=C2=A0=C2=A0=C2=A0 "Super User" /root >>> >>> # The nobody user/group for NFS file systems >>> g nobody 65534=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 -=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 - >>> u nobody 65534:65534 "Kernel Overflow User"=C2=A0=C2=A0=C2=A0=C2=A0 - >>> >>> # Administrator group: can *see* more than normal users >>> g adm=C2=A0=C2=A0=C2=A0=C2=A0 4=C2=A0=C2=A0=C2=A0=C2=A0 -=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 - >>> >>> # Administrator group: can *do* more than normal users >>> g wheel=C2=A0=C2=A0 10=C2=A0=C2=A0=C2=A0=C2=A0 -=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 - >>> >>> # Access to shared database of users on the system >>> g utmp=C2=A0=C2=A0=C2=A0 22=C2=A0=C2=A0=C2=A0=C2=A0 -=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 - >>> >>> # Physical and virtual hardware access groups >>> g audio=C2=A0=C2=A0 63=C2=A0=C2=A0=C2=A0=C2=A0 -=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 - >>> g cdrom=C2=A0=C2=A0 11=C2=A0=C2=A0=C2=A0=C2=A0 -=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 - >>> g dialout 18=C2=A0=C2=A0=C2=A0=C2=A0 -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 - >>> g disk=C2=A0=C2=A0=C2=A0 6=C2=A0=C2=A0=C2=A0=C2=A0 -=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 - >>> g input=C2=A0=C2=A0 104=C2=A0=C2=A0=C2=A0=C2=A0 -=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 - >>> g kmem=C2=A0=C2=A0=C2=A0 9=C2=A0=C2=A0=C2=A0=C2=A0 -=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 - >>> g kvm=C2=A0=C2=A0=C2=A0=C2=A0 36=C2=A0=C2=A0=C2=A0=C2=A0 -=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 - >>> g lp=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 7=C2=A0=C2=A0=C2=A0=C2=A0 -=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 - >>> g render=C2=A0 105=C2=A0=C2=A0=C2=A0=C2=A0 -=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 - >>> g sgx=C2=A0=C2=A0=C2=A0=C2=A0 106=C2=A0=C2=A0=C2=A0=C2=A0 -=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 - >>> g tape=C2=A0=C2=A0=C2=A0 33=C2=A0=C2=A0=C2=A0=C2=A0 -=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 - >>> g tty=C2=A0=C2=A0=C2=A0=C2=A0 5=C2=A0=C2=A0=C2=A0=C2=A0 -=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 - >>> g video=C2=A0=C2=A0 39=C2=A0=C2=A0=C2=A0=C2=A0 -=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 - >>> >>> # Default group for normal users >>> g users=C2=A0=C2=A0 100=C2=A0=C2=A0=C2=A0=C2=A0 -=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 - >>> #=C2=A0 This file is part of systemd. >>> # >>> #=C2=A0 systemd is free software; you can redistribute it and/or modify it >>> #=C2=A0 under the terms of the GNU Lesser General Public License as publi= shed by >>> #=C2=A0 the Free Software Foundation; either version 2.1 of the License, = or >>> #=C2=A0 (at your option) any later version. >>> >>> u systemd-coredump - "systemd Core Dumper" >>> #=C2=A0 This file is part of systemd. >>> # >>> #=C2=A0 systemd is free software; you can redistribute it and/or modify it >>> #=C2=A0 under the terms of the GNU Lesser General Public License as publi= shed by >>> #=C2=A0 the Free Software Foundation; either version 2.1 of the License, = or >>> #=C2=A0 (at your option) any later version. >>> >>> g systemd-journal 190 - >>> #=C2=A0 This file is part of systemd. >>> # >>> #=C2=A0 systemd is free software; you can redistribute it and/or modify it >>> #=C2=A0 under the terms of the GNU Lesser General Public License as publi= shed by >>> #=C2=A0 the Free Software Foundation; either version 2.1 of the License, = or >>> #=C2=A0 (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 w= ill put this on my TODO list. >> >>> =C2=A0 systemd-254-3.ipfire3.x86_64 100% >>> *** buffer overflow detected ***: terminated >> >> This is also a problem inside the build environment and I believe rebuildi= ng 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 >>> =C2=A0 dbus-broker-32-1.ipfire3.x86_64 100% >>> =C2=A0 uuidd-2.39.2-3.ipfire3.x86_64 100% >>> =C2=A0 setup-3.0-19.ipfire3.noarch 100% >>> *** buffer overflow detected ***: terminated >>> The child process terminated abnormally with status code 11 >>> =C2=A0 sudo-1.9.14p3-2.ipfire3.x86_64 100% >>> *** buffer overflow detected ***: terminated >>> The child process terminated abnormally with status code 11 >>> =C2=A0 bash-completion-2.11-1.ipfire3.noarch 100% >>> =C2=A0 filesystem-002-5.ipfire3.x86_64 0% >>> =C2=A0 groff-1.22.4-1.ipfire3.x86_64 100% >>> =C2=A0 openssh-9.4p1-1.ipfire3.x86_64 100% >>> =C2=A0 smartmontools-7.4-1.ipfire3.x86_64 100% >>> =C2=A0 mc-4.8.29-3.ipfire3.x86_64 100% >>> =C2=A0 libtool-2.4.7-2.ipfire3.x86_64 100% >>> =C2=A0 gettext-0.21.1-5.1.ipfire3.x86_64 100% >>> =C2=A0 gettext-libs-0.21.1-5.1.ipfire3.x86_64 100% >>> =C2=A0 findutils-4.9.0-1.ipfire3.x86_64 100% >>> =C2=A0 gcc-12.3.0-1.ipfire3.x86_64 100% >>> =C2=A0 gcc-c++-12.3.0-1.ipfire3.x86_64 100% >>> =C2=A0 cpp-12.3.0-1.ipfire3.x86_64 100% >>> =C2=A0 man-db-2.11.2-1.ipfire3.x86_64 100% >>> *** buffer overflow detected ***: terminated >>> The child process terminated abnormally with status code 11 >>> =C2=A0 ipfire-release-build-3.0-alpha2-10.ipfire3.noarch 0% >>> =C2=A0 pakfire-0.9.29-1.ipfire3.x86_64 100% >>> =C2=A0 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 =E2=80=9Cpakfire-build snapshot update=E2=80=9D and see if tha= t creates the snapshot? Maybe I didn=E2=80=99t 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. >>> >> > --===============6675006480089430235==--