From unknown Sun Jun 22 17:13:34 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#46109 <46109@debbugs.gnu.org> To: bug#46109 <46109@debbugs.gnu.org> Subject: Status: Failing tests (guix-pack, lint) Reply-To: bug#46109 <46109@debbugs.gnu.org> Date: Mon, 23 Jun 2025 00:13:34 +0000 retitle 46109 Failing tests (guix-pack, lint) reassign 46109 guix submitter 46109 taxuswc severity 46109 normal thanks From debbugs-submit-bounces@debbugs.gnu.org Mon Jan 25 17:11:06 2021 Received: (at submit) by debbugs.gnu.org; 25 Jan 2021 22:11:06 +0000 Received: from localhost ([127.0.0.1]:40244 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l4A4c-0002cW-7i for submit@debbugs.gnu.org; Mon, 25 Jan 2021 17:11:06 -0500 Received: from lists.gnu.org ([209.51.188.17]:43636) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l4A4P-0002bh-Io for submit@debbugs.gnu.org; Mon, 25 Jan 2021 17:10:51 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:55316) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1l4A4P-0000X0-56 for bug-guix@gnu.org; Mon, 25 Jan 2021 17:10:49 -0500 Received: from knopi.disroot.org ([178.21.23.139]:36524) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1l4A4I-00080N-BP for bug-guix@gnu.org; Mon, 25 Jan 2021 17:10:48 -0500 Received: from localhost (localhost [127.0.0.1]) by disroot.org (Postfix) with ESMTP id 31FF455332 for ; Mon, 25 Jan 2021 23:10:38 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at disroot.org Received: from knopi.disroot.org ([127.0.0.1]) by localhost (disroot.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Q0fCTfdP6ylh for ; Mon, 25 Jan 2021 23:10:33 +0100 (CET) To: bug-guix@gnu.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=disroot.org; s=mail; t=1611612633; bh=8242QwjqJMQicL4E/cl64IzgnnL+BLt1p9ZZrnekT/s=; h=To:From:Subject:Date; b=kEUU3ddy6imePT9+GaQB15+vIXfrGnFKxLOC1/WYx/JlSaZ/tsxwNju0GXs3aZ0Pk tq/S+5yDx1fG/L7X6gm/GHFMr6NLLubREyeJs2BnV9HlGgsRIcIG+dvVSniDxG0pvm qu3oG5tifOjEcMMgGxXUf+AfGrED6nm7/jqfGP/OI3sRcM9QON6WYeRYp2Y1aEklvQ 6GTZXVHevtjzmiQ2RAlqdNTbK4wxk9XNluHokmDAeTTA6PT4/typHNtt6D94+XpCp1 AQqhdomDbN1OqMW/AOG4V5NYxHZEEp0AXVzC3WcrBDbMYQqyENTxG7Lek0IscCAtFA P1B7Gqvdhvszw== From: taxuswc Subject: Failing tests (guix-pack, lint) Message-ID: <06a73269-5650-9020-24a7-08c5e7fd3275@disroot.org> Date: Mon, 25 Jan 2021 22:10:31 +0000 Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------2F483D0E3F6516CC1937C38D" Content-Language: en-US Received-SPF: pass client-ip=178.21.23.139; envelope-from=taxuswc@disroot.org; helo=knopi.disroot.org X-Spam_score_int: -19 X-Spam_score: -2.0 X-Spam_bar: -- X-Spam_report: (-2.0 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_FILL_THIS_FORM_SHORT=0.01, URIBL_SBL_A=0.1 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -0.1 (/) X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Mon, 25 Jan 2021 17:11:00 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.1 (-) This is a multi-part message in MIME format. --------------2F483D0E3F6516CC1937C38D Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable Hello, I am building GNU Guix from the source on a foreign distro. Several=20 tests fail: 1. tests/lint.scm. 2. tests/guix-pack.sh. Probably, tar is the root of the issue, as it=20 refuses to create a hard link to /opt/gnu/bin. 3. When current directory has symlinks in its path, tests/guix-gc.sh=20 fail because of the absence of path canonicalization in $PWD. =C2=A0=C2=A0=C2=A0 Assuming ln -s ~/downloads ~/downloads-sl and inserti= on of echo=20 instead of pipe at line 71, tests/guix-gc.sh yields + guix gc --list-roots accepted connection from pid 911, user taxus /home/taxus/downloads/distro/guix/guix-1.2.0/guix-gc-root /home/taxus/downloads/distro/guix/guix-1.2.0/test-tmp/var/755/profiles + echo grep /home/taxus/downloads-sl/distro/guix/guix-1.2.0/guix-gc-root grep /home/taxus/downloads-sl/distro/guix/guix-1.2.0/guix-gc-root I am =D0=B0ttaching ./test-suite-failing.log for the #1 and #2 and provid= ing=20 the versions of the build requirements below: - GNU tar: 1.33 - GNU make: 4.3 - GNU guix: 1.2.0, - GNU Guile: 2.2.6 - guile-json: 4.3.2 - guile-gcrypt: 0.3.0 - gnutls: 3.7.0 - guile-sqlite3: 0.1.3 - guile-zlib: 0.0.1 - guile-lzlib: 0.0.1 - guile-avahi: 6d43caf64f672a9694bf6c98bbf7a734f17a51e8 - guile-git: 0.4.0 Also, tests/offload.scm tests brings down the entire test suite when=20 guile-ssh is not installed (despite it being an optional dependency);=20 attaching the corresponding logfile, too. Thanks in advance, =C2=A0=C2=A0 ~taxuswc --------------2F483D0E3F6516CC1937C38D Content-Type: text/x-log; charset=UTF-8; name="test-suite-failing.log" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="test-suite-failing.log" =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 GNU Guix 1.2.0: ./test-suite.log =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 # TOTAL: 89 # PASS: 83 # SKIP: 4 # XFAIL: 0 # FAIL: 2 # XPASS: 0 # ERROR: 0 =2E. contents:: :depth: 2 FAIL: tests/lint =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D test-name: description: not a string location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:88 source: + (test-equal + "description: not a string" + "invalid description: foobar" + (single-lint-warning-message + (check-description-style + (dummy-package "x" (description 'foobar))))) expected-value: "invalid description: foobar" actual-value: "invalid description: foobar" result: PASS test-name: description: not empty location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:94 source: + (test-equal + "description: not empty" + "description should not be empty" + (single-lint-warning-message + (check-description-style + (dummy-package "x" (description ""))))) expected-value: "description should not be empty" actual-value: "description should not be empty" result: PASS test-name: description: invalid Texinfo markup location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:100= source: + (test-equal + "description: invalid Texinfo markup" + "Texinfo markup in description is invalid" + (single-lint-warning-message + (check-description-style + (dummy-package "x" (description "f{oo}b@r"))))) expected-value: "Texinfo markup in description is invalid" actual-value: "Texinfo markup in description is invalid" result: PASS test-name: description: does not start with an upper-case letter location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:106= source: + (test-equal + "description: does not start with an upper-case letter" + "description should start with an upper-case letter or digit" + (single-lint-warning-message + (let ((pkg (dummy-package + "x" + (description "bad description.")))) + (check-description-style pkg)))) expected-value: "description should start with an upper-case letter or di= git" actual-value: "description should start with an upper-case letter or digi= t" result: PASS test-name: description: may start with a digit location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:113= source: + (test-equal + "description: may start with a digit" + '() + (let ((pkg (dummy-package + "x" + (description "2-component library.")))) + (check-description-style pkg))) expected-value: () actual-value: () result: PASS test-name: description: may start with lower-case package name location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:119= source: + (test-equal + "description: may start with lower-case package name" + '() + (let ((pkg (dummy-package + "x" + (description "x is a dummy package.")))) + (check-description-style pkg))) expected-value: () actual-value: () result: PASS test-name: description: two spaces after end of sentence location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:125= source: + (test-equal + "description: two spaces after end of sentence" + "sentences in description should be followed by two spaces; possible = infraction at 3" + (single-lint-warning-message + (let ((pkg (dummy-package + "x" + (description "Bad. Quite bad.")))) + (check-description-style pkg)))) expected-value: "sentences in description should be followed by two space= s; possible infraction at 3" actual-value: "sentences in description should be followed by two spaces;= possible infraction at 3" result: PASS test-name: description: end-of-sentence detection with abbreviations location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:132= source: + (test-equal + "description: end-of-sentence detection with abbreviations" + '() + (let ((pkg (dummy-package + "x" + (description + "E.g. Foo, i.e. Bar resp. Baz (a.k.a. DVD).")))) + (check-description-style pkg))) expected-value: () actual-value: () result: PASS test-name: description: may not contain trademark signs: =E2=84=A2 location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:139= source: + (test-equal + "description: may not contain trademark signs: =E2=84=A2" + "description should not contain trademark sign '=E2=84=A2' at 20" + (single-lint-warning-message + (let ((pkg (dummy-package + "x" + (description "Does The Right Thing=E2=84=A2")))) + (check-description-style pkg)))) expected-value: "description should not contain trademark sign '=E2=84=A2= ' at 20" actual-value: "description should not contain trademark sign '=E2=84=A2' = at 20" result: PASS test-name: description: may not contain trademark signs: =C2=AE location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:146= source: + (test-equal + "description: may not contain trademark signs: =C2=AE" + "description should not contain trademark sign '=C2=AE' at 17" + (single-lint-warning-message + (let ((pkg (dummy-package + "x" + (description "Works with Format=C2=AE")))) + (check-description-style pkg)))) expected-value: "description should not contain trademark sign '=C2=AE' a= t 17" actual-value: "description should not contain trademark sign '=C2=AE' at = 17" result: PASS test-name: description: suggest ornament instead of quotes location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:153= source: + (test-equal + "description: suggest ornament instead of quotes" + "use @code or similar ornament instead of quotes" + (single-lint-warning-message + (let ((pkg (dummy-package + "x" + (description "This is a 'quoted' thing.")))) + (check-description-style pkg)))) expected-value: "use @code or similar ornament instead of quotes" actual-value: "use @code or similar ornament instead of quotes" result: PASS test-name: synopsis: not a string location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:160= source: + (test-equal + "synopsis: not a string" + "invalid synopsis: #f" + (single-lint-warning-message + (let ((pkg (dummy-package "x" (synopsis #f)))) + (check-synopsis-style pkg)))) expected-value: "invalid synopsis: #f" actual-value: "invalid synopsis: #f" result: PASS test-name: synopsis: not empty location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:167= source: + (test-equal + "synopsis: not empty" + "synopsis should not be empty" + (single-lint-warning-message + (let ((pkg (dummy-package "x" (synopsis "")))) + (check-synopsis-style pkg)))) expected-value: "synopsis should not be empty" actual-value: "synopsis should not be empty" result: PASS test-name: synopsis: valid Texinfo markup location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:174= source: + (test-equal + "synopsis: valid Texinfo markup" + "Texinfo markup in synopsis is invalid" + (single-lint-warning-message + (check-synopsis-style + (dummy-package "x" (synopsis "Bad $@ texinfo"))))) expected-value: "Texinfo markup in synopsis is invalid" actual-value: "Texinfo markup in synopsis is invalid" result: PASS test-name: synopsis: does not start with an upper-case letter location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:180= source: + (test-equal + "synopsis: does not start with an upper-case letter" + "synopsis should start with an upper-case letter or digit" + (single-lint-warning-message + (let ((pkg (dummy-package "x" (synopsis "bad synopsis")))) + (check-synopsis-style pkg)))) expected-value: "synopsis should start with an upper-case letter or digit= " actual-value: "synopsis should start with an upper-case letter or digit" result: PASS test-name: synopsis: may start with a digit location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:187= source: + (test-equal + "synopsis: may start with a digit" + '() + (let ((pkg (dummy-package + "x" + (synopsis "5-dimensional frobnicator")))) + (check-synopsis-style pkg))) expected-value: () actual-value: () result: PASS test-name: synopsis: ends with a period location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:193= source: + (test-equal + "synopsis: ends with a period" + "no period allowed at the end of the synopsis" + (single-lint-warning-message + (let ((pkg (dummy-package "x" (synopsis "Bad synopsis.")))) + (check-synopsis-style pkg)))) expected-value: "no period allowed at the end of the synopsis" actual-value: "no period allowed at the end of the synopsis" result: PASS test-name: synopsis: ends with 'etc.' location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:200= source: + (test-equal + "synopsis: ends with 'etc.'" + '() + (let ((pkg (dummy-package "x" (synopsis "Foo, bar, etc.")))) + (check-synopsis-style pkg))) expected-value: () actual-value: () result: PASS test-name: synopsis: starts with 'A' location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:206= source: + (test-equal + "synopsis: starts with 'A'" + "no article allowed at the beginning of the synopsis" + (single-lint-warning-message + (let ((pkg (dummy-package "x" (synopsis "A bad synop=C5=9Dis")))) + (check-synopsis-style pkg)))) expected-value: "no article allowed at the beginning of the synopsis" actual-value: "no article allowed at the beginning of the synopsis" result: PASS test-name: synopsis: starts with 'An' location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:213= source: + (test-equal + "synopsis: starts with 'An'" + "no article allowed at the beginning of the synopsis" + (single-lint-warning-message + (let ((pkg (dummy-package + "x" + (synopsis "An awful synopsis")))) + (check-synopsis-style pkg)))) expected-value: "no article allowed at the beginning of the synopsis" actual-value: "no article allowed at the beginning of the synopsis" result: PASS test-name: synopsis: starts with 'a' location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:220= source: + (test-equal + "synopsis: starts with 'a'" + '("no article allowed at the beginning of the synopsis" + "synopsis should start with an upper-case letter or digit") + (sort (map lint-warning-message + (let ((pkg (dummy-package "x" (synopsis "a bad synopsis"))= )) + (check-synopsis-style pkg))) + string 200 location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:463= source: + (test-equal + "home-page: 301 -> 200" + "permanent redirect from http://localhost:10000/foo/bar to http://loc= alhost:9999/foo/bar" + (with-http-server + `((200 ,%long-string)) + (let* ((initial-url (%local-url)) + (redirect + (build-response + #:code + 301 + #:headers + `((location unquote (string->uri initial-url)))))) + (parameterize + ((%http-server-port (+ 1 (%http-server-port)))) + (with-http-server + `((,redirect "")) + (let ((pkg (package + (inherit (dummy-package "x")) + (home-page (%local-url))))) + (single-lint-warning-message + (check-home-page pkg)))))))) expected-value: "permanent redirect from http://localhost:10000/foo/bar t= o http://localhost:9999/foo/bar" actual-value: "permanent redirect from http://localhost:10000/foo/bar to = http://localhost:9999/foo/bar" result: PASS test-name: home-page: 301 -> 404 location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:480= source: + (test-equal + "home-page: 301 -> 404" + "URI http://localhost:10000/foo/bar not reachable: 404 (\"Such is lif= e\")" + (with-http-server + '((404 "booh!")) + (let* ((initial-url (%local-url)) + (redirect + (build-response + #:code + 301 + #:headers + `((location unquote (string->uri initial-url)))))) + (parameterize + ((%http-server-port (+ 1 (%http-server-port)))) + (with-http-server + `((,redirect "")) + (let ((pkg (package + (inherit (dummy-package "x")) + (home-page (%local-url))))) + (single-lint-warning-message + (check-home-page pkg)))))))) expected-value: "URI http://localhost:10000/foo/bar not reachable: 404 (\= "Such is life\")" actual-value: "URI http://localhost:10000/foo/bar not reachable: 404 (\"S= uch is life\")" result: PASS test-name: source-file-name location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:497= source: + (test-equal + "source-file-name" + "the source file name should contain the package name" + (let ((pkg (dummy-package + "x" + (version "3.2.1") + (source + (origin + (method url-fetch) + (uri "http://www.example.com/3.2.1.tar.gz") + (sha256 %null-sha256)))))) + (single-lint-warning-message + (check-source-file-name pkg)))) expected-value: "the source file name should contain the package name" actual-value: "the source file name should contain the package name" result: PASS test-name: source-file-name: v prefix location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:509= source: + (test-equal + "source-file-name: v prefix" + "the source file name should contain the package name" + (let ((pkg (dummy-package + "x" + (version "3.2.1") + (source + (origin + (method url-fetch) + (uri "http://www.example.com/v3.2.1.tar.gz") + (sha256 %null-sha256)))))) + (single-lint-warning-message + (check-source-file-name pkg)))) expected-value: "the source file name should contain the package name" actual-value: "the source file name should contain the package name" result: PASS test-name: source-file-name: bad checkout location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:521= source: + (test-equal + "source-file-name: bad checkout" + "the source file name should contain the package name" + (let ((pkg (dummy-package + "x" + (version "3.2.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "http://www.example.com/x.git") + (commit "0"))) + (sha256 %null-sha256)))))) + (single-lint-warning-message + (check-source-file-name pkg)))) expected-value: "the source file name should contain the package name" actual-value: "the source file name should contain the package name" result: PASS test-name: source-file-name: good checkout location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:535= source: + (test-equal + "source-file-name: good checkout" + '() + (let ((pkg (dummy-package + "x" + (version "3.2.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "http://git.example.com/x.git") + (commit "0"))) + (file-name (string-append "x-" version)) + (sha256 %null-sha256)))))) + (check-source-file-name pkg))) expected-value: () actual-value: () result: PASS test-name: source-file-name: valid location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:549= source: + (test-equal + "source-file-name: valid" + '() + (let ((pkg (dummy-package + "x" + (version "3.2.1") + (source + (origin + (method url-fetch) + (uri "http://www.example.com/x-3.2.1.tar.gz") + (sha256 %null-sha256)))))) + (check-source-file-name pkg))) expected-value: () actual-value: () result: PASS test-name: source-unstable-tarball location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:560= source: + (test-equal + "source-unstable-tarball" + "the source URI should not be an autogenerated tarball" + (let ((pkg (dummy-package + "x" + (source + (origin + (method url-fetch) + (uri "https://github.com/example/example/archive/v0.= 0.tar.gz") + (sha256 %null-sha256)))))) + (single-lint-warning-message + (check-source-unstable-tarball pkg)))) expected-value: "the source URI should not be an autogenerated tarball" actual-value: "the source URI should not be an autogenerated tarball" result: PASS test-name: source-unstable-tarball: source #f location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:571= source: + (test-equal + "source-unstable-tarball: source #f" + '() + (let ((pkg (dummy-package "x" (source #f)))) + (check-source-unstable-tarball pkg))) expected-value: () actual-value: () result: PASS test-name: source-unstable-tarball: valid location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:577= source: + (test-equal + "source-unstable-tarball: valid" + '() + (let ((pkg (dummy-package + "x" + (source + (origin + (method url-fetch) + (uri "https://github.com/example/example/releases/do= wnload/x-0.0/x-0.0.tar.gz") + (sha256 %null-sha256)))))) + (check-source-unstable-tarball pkg))) expected-value: () actual-value: () result: PASS test-name: source-unstable-tarball: package named archive location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:587= source: + (test-equal + "source-unstable-tarball: package named archive" + '() + (let ((pkg (dummy-package + "x" + (source + (origin + (method url-fetch) + (uri "https://github.com/example/archive/releases/do= wnload/x-0.0/x-0.0.tar.gz") + (sha256 %null-sha256)))))) + (check-source-unstable-tarball pkg))) expected-value: () actual-value: () result: PASS test-name: source-unstable-tarball: not-github location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:597= source: + (test-equal + "source-unstable-tarball: not-github" + '() + (let ((pkg (dummy-package + "x" + (source + (origin + (method url-fetch) + (uri "https://bitbucket.org/archive/example/download= /x-0.0.tar.gz") + (sha256 %null-sha256)))))) + (check-source-unstable-tarball pkg))) expected-value: () actual-value: () result: PASS test-name: source-unstable-tarball: git-fetch location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:607= source: + (test-equal + "source-unstable-tarball: git-fetch" + '() + (let ((pkg (dummy-package + "x" + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/archive/example") + (commit "0"))) + (sha256 %null-sha256)))))) + (check-source-unstable-tarball pkg))) expected-value: () actual-value: () result: PASS test-name: source: 200 location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:620= source: + (test-equal + "source: 200" + '() + (with-http-server + `((200 ,%long-string)) + (let ((pkg (package + (inherit (dummy-package "x")) + (source + (origin + (method url-fetch) + (uri (%local-url)) + (sha256 %null-sha256)))))) + (check-source pkg)))) expected-value: () actual-value: () result: PASS test-name: source: 200 but short length location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:632= source: + (test-equal + "source: 200 but short length" + "URI http://localhost:9999/foo/bar returned suspiciously small file (= 18 bytes)" + (with-http-server + '((200 "This is too small.")) + (let ((pkg (package + (inherit (dummy-package "x")) + (source + (origin + (method url-fetch) + (uri (%local-url)) + (sha256 %null-sha256)))))) + (match (check-source pkg) + ((first-warning + (and (? lint-warning?) second-warning)) + (lint-warning-message second-warning)))))) expected-value: "URI http://localhost:9999/foo/bar returned suspiciously = small file (18 bytes)" actual-value: "URI http://localhost:9999/foo/bar returned suspiciously sm= all file (18 bytes)" result: PASS test-name: source: 404 location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:647= source: + (test-equal + "source: 404" + "URI http://localhost:9999/foo/bar not reachable: 404 (\"Such is life= \")" + (with-http-server + `((404 ,%long-string)) + (let ((pkg (package + (inherit (dummy-package "x")) + (source + (origin + (method url-fetch) + (uri (%local-url)) + (sha256 %null-sha256)))))) + (match (check-source pkg) + ((first-warning + (and (? lint-warning?) second-warning)) + (lint-warning-message second-warning)))))) expected-value: "URI http://localhost:9999/foo/bar not reachable: 404 (\"= Such is life\")" actual-value: "URI http://localhost:9999/foo/bar not reachable: 404 (\"Su= ch is life\")" result: PASS test-name: source: 404 and 200 location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:662= source: + (test-equal + "source: 404 and 200" + '() + (with-http-server + `((404 ,%long-string)) + (let ((bad-url (%local-url))) + (parameterize + ((%http-server-port (+ 1 (%http-server-port)))) + (with-http-server + `((200 ,%long-string)) + (let ((pkg (package + (inherit (dummy-package "x")) + (source + (origin + (method url-fetch) + (uri (list bad-url (%local-url))) + (sha256 %null-sha256)))))) + (check-source pkg))))))) expected-value: () actual-value: () result: PASS test-name: source: 301 -> 200 location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:679= source: + (test-equal + "source: 301 -> 200" + "permanent redirect from http://localhost:10000/foo/bar to http://loc= alhost:9999/foo/bar" + (with-http-server + `((200 ,%long-string)) + (let* ((initial-url (%local-url)) + (redirect + (build-response + #:code + 301 + #:headers + `((location unquote (string->uri initial-url)))))) + (parameterize + ((%http-server-port (+ 1 (%http-server-port)))) + (with-http-server + `((,redirect "")) + (let ((pkg (package + (inherit (dummy-package "x")) + (source + (origin + (method url-fetch) + (uri (%local-url)) + (sha256 %null-sha256)))))) + (match (check-source pkg) + ((first-warning + (and (? lint-warning?) second-warning)) + (lint-warning-message second-warning))))))))) expected-value: "permanent redirect from http://localhost:10000/foo/bar t= o http://localhost:9999/foo/bar" actual-value: "permanent redirect from http://localhost:10000/foo/bar to = http://localhost:9999/foo/bar" result: PASS test-name: source, git-reference: 301 -> 200 location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:701= source: + (test-equal + "source, git-reference: 301 -> 200" + "permanent redirect from http://localhost:10000/foo/bar to http://loc= alhost:9999/foo/bar" + (with-http-server + `((200 ,%long-string)) + (let* ((initial-url (%local-url)) + (redirect + (build-response + #:code + 301 + #:headers + `((location unquote (string->uri initial-url)))))) + (parameterize + ((%http-server-port (+ 1 (%http-server-port)))) + (with-http-server + `((,redirect "")) + (let ((pkg (dummy-package + "x" + (source + (origin + (method git-fetch) + (uri (git-reference + (url (%local-url)) + (commit "v1.0.0"))) + (sha256 %null-sha256)))))) + (single-lint-warning-message (check-source pkg)))))))) expected-value: "permanent redirect from http://localhost:10000/foo/bar t= o http://localhost:9999/foo/bar" actual-value: "permanent redirect from http://localhost:10000/foo/bar to = http://localhost:9999/foo/bar" result: PASS test-name: source: 301 -> 404 location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:721= source: + (test-equal + "source: 301 -> 404" + "URI http://localhost:10000/foo/bar not reachable: 404 (\"Such is lif= e\")" + (with-http-server + '((404 "booh!")) + (let* ((initial-url (%local-url)) + (redirect + (build-response + #:code + 301 + #:headers + `((location unquote (string->uri initial-url)))))) + (parameterize + ((%http-server-port (+ 1 (%http-server-port)))) + (with-http-server + `((,redirect "")) + (let ((pkg (package + (inherit (dummy-package "x")) + (source + (origin + (method url-fetch) + (uri (%local-url)) + (sha256 %null-sha256)))))) + (match (check-source pkg) + ((first-warning + (and (? lint-warning?) second-warning)) + (lint-warning-message second-warning))))))))) expected-value: "URI http://localhost:10000/foo/bar not reachable: 404 (\= "Such is life\")" actual-value: "URI http://localhost:10000/foo/bar not reachable: 404 (\"S= uch is life\")" result: PASS test-name: mirror-url location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:743= source: + (test-equal + "mirror-url" + '() + (let ((source + (origin + (method url-fetch) + (uri "http://example.org/foo/bar.tar.gz") + (sha256 %null-sha256)))) + (check-mirror-url + (dummy-package "x" (source source))))) expected-value: () actual-value: () result: PASS test-name: mirror-url: one suggestion location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:751= source: + (test-equal + "mirror-url: one suggestion" + "URL should be 'mirror://gnu/foo/foo.tar.gz'" + (let ((source + (origin + (method url-fetch) + (uri "http://ftp.gnu.org/pub/gnu/foo/foo.tar.gz") + (sha256 %null-sha256)))) + (single-lint-warning-message + (check-mirror-url + (dummy-package "x" (source source)))))) expected-value: "URL should be 'mirror://gnu/foo/foo.tar.gz'" actual-value: "URL should be 'mirror://gnu/foo/foo.tar.gz'" result: PASS test-name: github-url location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:761= source: + (test-equal + "github-url" + '() + (with-http-server + `((200 ,%long-string)) + (check-github-url + (dummy-package + "x" + (source + (origin + (method url-fetch) + (uri (%local-url)) + (sha256 %null-sha256))))))) expected-value: () actual-value: () result: PASS test-name: github-url: one suggestion location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:773= source: + (test-equal + "github-url: one suggestion" + (string-append "URL should be '" github-url "'") + (let ((redirect + (build-response + #:code + 301 + #:headers + `((location unquote (string->uri github-url)))))) + (with-http-server + `((,redirect "")) + (let* ((initial-url (%local-url)) + (redirect + (build-response + #:code + 302 + #:headers + `((location unquote (string->uri initial-url)))))) + (parameterize + ((%http-server-port (+ 1 (%http-server-port)))) + (with-http-server + `((,redirect "")) + (single-lint-warning-message + (check-github-url + (dummy-package + "x" + (source + (origin + (method url-fetch) + (uri (%local-url)) + (sha256 %null-sha256)))))))))))) expected-value: "URL should be 'https://github.com/foo/bar/bar-1.0.tar.gz= '" actual-value: "URL should be 'https://github.com/foo/bar/bar-1.0.tar.gz'"= result: PASS test-name: github-url: already the correct github url location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:797= source: + (test-equal + "github-url: already the correct github url" + '() + (check-github-url + (dummy-package + "x" + (source + (origin + (method url-fetch) + (uri github-url) + (sha256 %null-sha256)))))) expected-value: () actual-value: () result: PASS test-name: cve location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:806= source: + (test-equal + "cve" + '() + (mock ((guix lint) package-vulnerabilities (const '())) + (check-vulnerabilities (dummy-package "x")))) expected-value: () actual-value: () result: PASS test-name: cve: one vulnerability location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:811= source: + (test-equal + "cve: one vulnerability" + "probably vulnerable to CVE-2015-1234" + (let ((dummy-vulnerabilities + (lambda (package) + (list (make-struct/no-tail + (@@ (guix cve) ) + "CVE-2015-1234" + (list (cons (package-name package) + (package-version package)))))))) + (single-lint-warning-message + (check-vulnerabilities + (dummy-package "pi" (version "3.14")) + dummy-vulnerabilities)))) expected-value: "probably vulnerable to CVE-2015-1234" actual-value: "probably vulnerable to CVE-2015-1234" result: PASS test-name: cve: one patched vulnerability location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:824= source: + (test-equal + "cve: one patched vulnerability" + '() + (mock ((guix lint) + package-vulnerabilities + (lambda (package) + (list (make-struct/no-tail + (@@ (guix cve) ) + "CVE-2015-1234" + (list (cons (package-name package) + (package-version package))))))) + (check-vulnerabilities + (dummy-package + "pi" + (version "3.14") + (source + (dummy-origin + (patches (list "/a/b/pi-CVE-2015-1234.patch")))))))) expected-value: () actual-value: () result: PASS test-name: cve: known safe from vulnerability location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:840= source: + (test-equal + "cve: known safe from vulnerability" + '() + (mock ((guix lint) + package-vulnerabilities + (lambda (package) + (list (make-struct/no-tail + (@@ (guix cve) ) + "CVE-2015-1234" + (list (cons (package-name package) + (package-version package))))))) + (check-vulnerabilities + (dummy-package + "pi" + (version "3.14") + (properties `((lint-hidden-cve "CVE-2015-1234"))))))) expected-value: () actual-value: () result: PASS test-name: cve: vulnerability fixed in replacement version location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:853= source: + (test-equal + "cve: vulnerability fixed in replacement version" + '() + (mock ((guix lint) + package-vulnerabilities + (lambda (package) + (match (package-version package) + ("0" + (list (make-struct/no-tail + (@@ (guix cve) ) + "CVE-2015-1234" + (list (cons (package-name package) + (package-version package)))))) + ("1" '())))) + (check-vulnerabilities + (dummy-package + "foo" + (version "0") + (replacement (dummy-package "foo" (version "1"))))))) expected-value: () actual-value: () result: PASS test-name: cve: patched vulnerability in replacement location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:870= source: + (test-equal + "cve: patched vulnerability in replacement" + '() + (mock ((guix lint) + package-vulnerabilities + (lambda (package) + (list (make-struct/no-tail + (@@ (guix cve) ) + "CVE-2015-1234" + (list (cons (package-name package) + (package-version package))))))) + (check-vulnerabilities + (dummy-package + "pi" + (version "3.14") + (source (dummy-origin)) + (replacement + (dummy-package + "pi" + (version "3.14") + (source + (dummy-origin + (patches (list "/a/b/pi-CVE-2015-1234.patch")))))))= ))) expected-value: () actual-value: () result: PASS test-name: formatting: lonely parentheses location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:888= source: + (test-equal + "formatting: lonely parentheses" + "parentheses feel lonely, move to the previous or next line" + (single-lint-warning-message + (check-formatting + (dummy-package "ugly as hell!")))) expected-value: "parentheses feel lonely, move to the previous or next li= ne" actual-value: "parentheses feel lonely, move to the previous or next line= " result: PASS test-name: formatting: tabulation location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:896= source: + (test-assert + "formatting: tabulation" + (string-match-or-error + "tabulation on line [0-9]+, column [0-9]+" + (single-lint-warning-message + (check-formatting + (dummy-package "leave the tab here:\t"))))) actual-value: #("tabulation on line 900, column 57" (0 . 33)) result: PASS test-name: formatting: trailing white space location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:902= source: + (test-assert + "formatting: trailing white space" + (string-match-or-error + "trailing white space .*" + (single-lint-warning-message + (check-formatting (dummy-package "x"))))) actual-value: #("trailing white space on line 907" (0 . 32)) result: PASS test-name: formatting: long line location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:909= source: + (test-assert + "formatting: long line" + (string-match-or-error + "line [0-9]+ is way too long \\([0-9]+ characters\\)" + (single-lint-warning-message + (check-formatting (dummy-package "x"))))) actual-value: #("line 913 is way too long (118 characters)" (0 . 41)) result: PASS test-name: formatting: alright location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:916= source: + (test-equal + "formatting: alright" + '() + (check-formatting (dummy-package "x"))) expected-value: () actual-value: () result: PASS test-name: archival: missing content location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:921= source: + (test-assert + "archival: missing content" + (let* ((origin + (origin + (method url-fetch) + (uri "http://example.org/foo.tgz") + (sha256 (make-bytevector 32)))) + (warnings + (with-http-server + '((404 "Not archived.")) + (parameterize + ((%swh-base-url (%local-url))) + (check-archival + (dummy-package "x" (source origin))))))) + (warning-contains? "not archived" warnings))) actual-value: #f actual-error: + (keyword-argument-error + # + "Unrecognized keyword" + () + (#:verify-certificate?)) result: FAIL test-name: archival: content available location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:933= source: + (test-equal + "archival: content available" + '() + (let* ((origin + (origin + (method url-fetch) + (uri "http://example.org/foo.tgz") + (sha256 (make-bytevector 32)))) + (content + "{ \"checksums\": {}, \"data_url\": \"xyz\",\n = \"length\": 42 }")) + (with-http-server + `((200 ,content)) + (parameterize + ((%swh-base-url (%local-url))) + (check-archival + (dummy-package "x" (source origin))))))) result: SKIP test-name: archival: missing revision location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:947= source: + (test-assert + "archival: missing revision" + (let* ((origin + (origin + (method git-fetch) + (uri (git-reference + (url "http://example.org/foo.git") + (commit + "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"))) + (sha256 (make-bytevector 32)))) + (save "{ \"origin_url\": \"http://example.org/foo.git\",\n = \"save_request_date\": \"2014-11-17T22:09:38+01:00\",\n= \"save_request_status\": \"accepted\",\n = \"save_task_status\": \"scheduled\" }") + (warnings + (with-http-server + `((404 "No revision.") + (404 "No origin.") + (200 ,save)) + (parameterize + ((%swh-base-url (%local-url))) + (check-archival + (dummy-package "x" (source origin))))))) + (warning-contains? "scheduled" warnings))) result: SKIP test-name: archival: revision available location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:967= source: + (test-equal + "archival: revision available" + '() + (let* ((origin + (origin + (method git-fetch) + (uri (git-reference + (url "http://example.org/foo.git") + (commit + "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"))) + (sha256 (make-bytevector 32)))) + (revision + "{ \"author\": {}, \"parents\": [],\n \= "date\": \"2014-11-17T22:09:38+01:00\" }")) + (with-http-server + `((200 ,revision)) + (parameterize + ((%swh-base-url (%local-url))) + (check-archival + (dummy-package "x" (source origin))))))) result: SKIP test-name: archival: rate limit reached location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:983= source: + (test-assert + "archival: rate limit reached" + (let* ((origin + (origin + (method url-fetch) + (uri "http://example.org/foo.tgz") + (sha256 (make-bytevector 32)))) + (too-many + (build-response + #:code + 429 + #:reason-phrase + "Too many requests" + #:headers + '((x-ratelimit-remaining . "0") + (x-ratelimit-reset . "3000000000")))) + (warnings + (with-http-server + `((,too-many "Rate limit reached.")) + (parameterize + ((%swh-base-url (%local-url))) + (append-map + (lambda (name) + (check-archival + (dummy-package name (source origin)))) + '("x" "y" "z")))))) + (string-contains + (single-lint-warning-message warnings) + "rate limit reached"))) result: SKIP warning: cannot run Web server for tests: Address already in use warning: cannot run Web server for tests: Address already in use warning: cannot run Web server for tests: Address already in use warning: cannot run Web server for tests: Address already in use FAIL: tests/guix-pack =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D + guile -c '(getaddrinfo "www.gnu.org" "80" AI_NUMERICSERV)' + guix pack --version guix pack (GNU Guix) 1.2.0 Copyright (C) 2020 the Guix authors License GPLv3+: GNU GPL version 3 or later This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. + GUIX_BUILD_OPTIONS=3D--no-substitutes + export GUIX_BUILD_OPTIONS ++ mktemp -d + test_directory=3D/tmp/tmp.QVmTayA5IX + trap 'chmod -Rf +w "$test_directory"; rm -rf "$test_directory"' EXIT ++ guix pack coreutils -d --no-grafts accepted connection from pid 224, user taxus + drv=3D/home/taxus/downloads/distro/guix/guix-1.2.0/test-tmp/store/15xij= s4mj2xiag6bi6cn7mgrbdppc1v5-tarball-pack.tar.gz.drv + guix gc -R /home/taxus/downloads/distro/guix/guix-1.2.0/test-tmp/store/= 15xijs4mj2xiag6bi6cn7mgrbdppc1v5-tarball-pack.tar.gz.drv ++ guix build coreutils -d --no-grafts accepted connection from pid 231, user taxus accepted connection from pid 233, user taxus + grep /home/taxus/downloads/distro/guix/guix-1.2.0/test-tmp/store/kknykq= 25bargcnjk11qax6lpsasx07f4-coreutils-8.32.drv /home/taxus/downloads/distro/guix/guix-1.2.0/test-tmp/store/kknykq25bargc= njk11qax6lpsasx07f4-coreutils-8.32.drv ++ guix pack idutils -d --no-grafts --target=3Darm-linux-gnueabihf accepted connection from pid 246, user taxus + drv=3D/home/taxus/downloads/distro/guix/guix-1.2.0/test-tmp/store/wjk12= i62pp5300gyk84n736ml093417c-tarball-pack.tar.gz.drv + guix gc -R /home/taxus/downloads/distro/guix/guix-1.2.0/test-tmp/store/= wjk12i62pp5300gyk84n736ml093417c-tarball-pack.tar.gz.drv ++ guix build idutils --target=3Darm-linux-gnueabihf -d --no-grafts accepted connection from pid 253, user taxus accepted connection from pid 255, user taxus + grep /home/taxus/downloads/distro/guix/guix-1.2.0/test-tmp/store/rfawjr= 4lbdjkbxp9hms20x95k9v626sx-idutils-4.6.drv /home/taxus/downloads/distro/guix/guix-1.2.0/test-tmp/store/rfawjr4lbdjkb= xp9hms20x95k9v626sx-idutils-4.6.drv + guix gc -R /home/taxus/downloads/distro/guix/guix-1.2.0/test-tmp/store/= wjk12i62pp5300gyk84n736ml093417c-tarball-pack.tar.gz.drv ++ guix build idutils -d --no-grafts accepted connection from pid 268, user taxus accepted connection from pid 270, user taxus + grep /home/taxus/downloads/distro/guix/guix-1.2.0/test-tmp/store/22prh3= 8vv7v42wbdz0ndr3faimvg8kni-idutils-4.6.drv + guix pack --compression=3Dnone --bootstrap guile-bootstrap accepted connection from pid 283, user taxus /home/taxus/downloads/distro/guix/guix-1.2.0/test-tmp/store/x821wfv2zvy4k= 3q8m8mibfjl1x0x2pvk-tarball-pack.tar.xz ++ guix pack --bootstrap guile-bootstrap accepted connection from pid 290, user taxus + out1=3D/home/taxus/downloads/distro/guix/guix-1.2.0/test-tmp/store/x821= wfv2zvy4k3q8m8mibfjl1x0x2pvk-tarball-pack.tar.xz ++ guix pack --bootstrap -e '(@ (gnu packages bootstrap) %bootstrap-guile= )' accepted connection from pid 297, user taxus + out2=3D/home/taxus/downloads/distro/guix/guix-1.2.0/test-tmp/store/x821= wfv2zvy4k3q8m8mibfjl1x0x2pvk-tarball-pack.tar.xz + test -n /home/taxus/downloads/distro/guix/guix-1.2.0/test-tmp/store/x82= 1wfv2zvy4k3q8m8mibfjl1x0x2pvk-tarball-pack.tar.xz + test /home/taxus/downloads/distro/guix/guix-1.2.0/test-tmp/store/x821wf= v2zvy4k3q8m8mibfjl1x0x2pvk-tarball-pack.tar.xz =3D /home/taxus/downloads/= distro/guix/guix-1.2.0/test-tmp/store/x821wfv2zvy4k3q8m8mibfjl1x0x2pvk-ta= rball-pack.tar.xz + guix pack -r /tmp/tmp.QVmTayA5IX/my-guile --bootstrap guile-bootstrap accepted connection from pid 304, user taxus /home/taxus/downloads/distro/guix/guix-1.2.0/test-tmp/store/x821wfv2zvy4k= 3q8m8mibfjl1x0x2pvk-tarball-pack.tar.xz ++ readlink /tmp/tmp.QVmTayA5IX/my-guile + test /home/taxus/downloads/distro/guix/guix-1.2.0/test-tmp/store/x821wf= v2zvy4k3q8m8mibfjl1x0x2pvk-tarball-pack.tar.xz =3D /home/taxus/downloads/= distro/guix/guix-1.2.0/test-tmp/store/x821wfv2zvy4k3q8m8mibfjl1x0x2pvk-ta= rball-pack.tar.xz + guix gc --list-roots + grep '^/tmp/tmp.QVmTayA5IX/my-guile$' accepted connection from pid 312, user taxus /tmp/tmp.QVmTayA5IX/my-guile + rm /tmp/tmp.QVmTayA5IX/my-guile ++ guix pack --bootstrap -S /opt/gnu/bin=3Dbin guile-bootstrap accepted connection from pid 321, user taxus + the_pack=3D/home/taxus/downloads/distro/guix/guix-1.2.0/test-tmp/store/= az698s2v2q2qnc1ljrg4ypnjpb246x4c-tarball-pack.tar.xz + cd /tmp/tmp.QVmTayA5IX + tar -xf /home/taxus/downloads/distro/guix/guix-1.2.0/test-tmp/store/az6= 98s2v2q2qnc1ljrg4ypnjpb246x4c-tarball-pack.tar.xz tar: ./opt/gnu/bin: Cannot hard link to =E2=80=98./opt/gnu/bin=E2=80=99: = No such file or directory tar: Exiting with failure status due to previous errors + chmod -Rf +w /tmp/tmp.QVmTayA5IX + rm -rf /tmp/tmp.QVmTayA5IX FAIL tests/guix-pack.sh (exit status: 2) --------------2F483D0E3F6516CC1937C38D Content-Type: text/x-log; charset=UTF-8; name="offload.log" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="offload.log" Backtrace: In ice-9/boot-9.scm: 2887:24 19 (_) 222:17 18 (map1 (((guix scripts offload)) ((srfi srfi-64)))) 2800:17 17 (resolve-interface (guix scripts offload) #:select _ # _ =E2= =80=A6) In ice-9/threads.scm: 390:8 16 (_ _) In ice-9/boot-9.scm: 2726:13 15 (_) In ice-9/threads.scm: 390:8 14 (_ _) In ice-9/boot-9.scm: 2994:20 13 (_) 2312:4 12 (save-module-excursion #) 3014:26 11 (_) In unknown file: 10 (primitive-load-path "guix/scripts/offload" #) In ice-9/eval.scm: 721:20 9 (primitive-eval (define-module (guix scripts offload) =E2=80= =A6)) In ice-9/psyntax.scm: 1262:36 8 (expand-top-sequence ((define-module (guix # #) # # =E2=80=A6= )) =E2=80=A6) 1209:24 7 (parse _ (("placeholder" placeholder)) ((top) #(# # =E2=80=A6= )) =E2=80=A6) 285:10 6 (parse _ (("placeholder" placeholder)) (()) _ c&e (eval) =E2= =80=A6) In ice-9/eval.scm: 293:34 5 (_ #) In ice-9/boot-9.scm: 2874:4 4 (define-module* _ #:filename _ #:pure _ #:version _ # _ =E2=80= =A6) 2887:24 3 (_) 222:17 2 (map1 (((ssh key)) ((ssh auth)) ((ssh session)) ((=E2=80=A6)= ) =E2=80=A6)) 2803:6 1 (resolve-interface _ #:select _ #:hide _ #:prefix _ # _ =E2=80= =A6) In unknown file: 0 (scm-error misc-error #f "~A ~S" ("no code for modu=E2=80=A6= " =E2=80=A6) =E2=80=A6) ERROR: In procedure scm-error: no code for module (ssh key) --------------2F483D0E3F6516CC1937C38D-- From debbugs-submit-bounces@debbugs.gnu.org Tue Jan 26 06:05:08 2021 Received: (at 46109) by debbugs.gnu.org; 26 Jan 2021 11:05:08 +0000 Received: from localhost ([127.0.0.1]:40855 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l4M9k-0004kU-FC for submit@debbugs.gnu.org; Tue, 26 Jan 2021 06:05:08 -0500 Received: from mail-wm1-f49.google.com ([209.85.128.49]:52803) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l4M9i-0004js-98 for 46109@debbugs.gnu.org; Tue, 26 Jan 2021 06:05:06 -0500 Received: by mail-wm1-f49.google.com with SMTP id m187so2075659wme.2 for <46109@debbugs.gnu.org>; Tue, 26 Jan 2021 03:05:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:in-reply-to:references:date:message-id:mime-version :content-transfer-encoding; bh=0XbXt1PIEEatl+SNzRjYsjTfTZ3SAVZmWfCgtzvdSwk=; b=loBk8N/LwbG6iftvjZGjYaIDnKhBuXYpfmQOdFeENsoAECCsPHlfHDe4qaC3sO9h8P TuOFCqvev7eVCm5BtMBxC5a/G4+G31Nbtm2nMVxhAG0H/7NPUA3m139zlA8L5YUImDnA i4Pf9fknySEQytqmbzZv2hgArP6KLMmSeROQ6LBLwnMyyK3DVvigVo6x0t+9ekvcnXH6 6lm2/h9Nw637lOvd2FL4sYRiFWAjkQzZB0hO9ixuDzt8Tr4quw5gPnVvGX5JlrdRUJuI bFRfum6pYI6V18Qahf41aqDe0DzQXReFMvAkreJMTvoDszxw2kasVOegPOkhBHC4+SR7 C1xg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:in-reply-to:references:date :message-id:mime-version:content-transfer-encoding; bh=0XbXt1PIEEatl+SNzRjYsjTfTZ3SAVZmWfCgtzvdSwk=; b=ViS9VZGOig15L6HhR9CvI0OIYOwab41C1m/r7OZ/mF2fBz3rypT6k8WENzebGYZta5 7IpzMDESgxJCjctANjbQlexByKQugS6RR4GYtV4btSNNe3h9UTargU4O5BBwz6ZR4mQA fzAYZ2KlTnzov0owQluVkMepOd8oMydCqKjgf+rrOGqz3FK4lW73QPMtLlM/gvLgaMRX HPelwzwLtzCwNl0sIW+sAyJ9e5bgvVTmsthP0lu5aTZF4rpp+2ImL6l9L5w2sItcywEH Y2C423fBl4T108TuXBFBZxqLkfrxqLGtRupeVtBnxXTOKD9xIUqY6HRu5rNsTJ54ZeDL fDsQ== X-Gm-Message-State: AOAM531hgy+HaJGDkbV6zSYPPenOlsG9aqHhr8R8Yh2Q0MQkjF/0JzQ/ wnrX3jlJtks1o31ifmUfLINNhzhgmjo= X-Google-Smtp-Source: ABdhPJwvyXq90hK1yD5mulb8YiWQDOJgIBOUgTuFE0xRYHvqxROTRv4hzHZOlAQEkdPokjwne2ggOA== X-Received: by 2002:a1c:8002:: with SMTP id b2mr4280257wmd.94.1611659100308; Tue, 26 Jan 2021 03:05:00 -0800 (PST) Received: from lili ([2a01:e0a:59b:9120:65d2:2476:f637:db1e]) by smtp.gmail.com with ESMTPSA id i6sm18434524wrs.71.2021.01.26.03.04.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Jan 2021 03:04:59 -0800 (PST) From: zimoun To: taxuswc , 46109@debbugs.gnu.org Subject: Re: bug#46109: Failing tests (guix-pack, lint) In-Reply-To: <06a73269-5650-9020-24a7-08c5e7fd3275@disroot.org> References: <06a73269-5650-9020-24a7-08c5e7fd3275@disroot.org> Date: Tue, 26 Jan 2021 11:55:54 +0100 Message-ID: <867do0j7b9.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 46109 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi, On Mon, 25 Jan 2021 at 22:10, taxuswc--- via Bug reports for GNU Guix wrote: > I am building GNU Guix from the source on a foreign distro. Several=20 > tests fail: Which commit are you building using which commit version? Did you do guix environment guix ./bootstrap ./configure --localstatedir=3D/var/ make make check ? Or something else? Or are you trying to bootstrap Guix on foreign distro? > FAIL: tests/lint > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D [...] > test-name: archival: missing content > location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:921 > source: > + (test-assert > + "archival: missing content" > + (let* ((origin > + (origin > + (method url-fetch) > + (uri "http://example.org/foo.tgz") > + (sha256 (make-bytevector 32)))) > + (warnings > + (with-http-server > + '((404 "Not archived.")) > + (parameterize > + ((%swh-base-url (%local-url))) > + (check-archival > + (dummy-package "x" (source origin))))))) > + (warning-contains? "not archived" warnings))) > actual-value: #f > actual-error: > + (keyword-argument-error > + # > + "Unrecognized keyword" > + () > + (#:verify-certificate?)) > result: FAIL Hum?! [...] > FAIL: tests/guix-pack > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > > + guile -c '(getaddrinfo "www.gnu.org" "80" AI_NUMERICSERV)' > + guix pack --version > guix pack (GNU Guix) 1.2.0 > Copyright (C) 2020 the Guix authors > License GPLv3+: GNU GPL version 3 or later > This is free software: you are free to change and redistribute it. > There is NO WARRANTY, to the extent permitted by law. [...] > + tar -xf /home/taxus/downloads/distro/guix/guix-1.2.0/test-tmp/store/az6= 98s2v2q2qnc1ljrg4ypnjpb246x4c-tarball-pack.tar.xz > tar: ./opt/gnu/bin: Cannot hard link to =E2=80=98./opt/gnu/bin=E2=80=99: = No such file or directory > tar: Exiting with failure status due to previous errors > + chmod -Rf +w /tmp/tmp.QVmTayA5IX > + rm -rf /tmp/tmp.QVmTayA5IX > FAIL tests/guix-pack.sh (exit status: 2) > > Backtrace: > In ice-9/boot-9.scm: > 2887:24 19 (_) > 222:17 18 (map1 (((guix scripts offload)) ((srfi srfi-64)))) > 2800:17 17 (resolve-interface (guix scripts offload) #:select _ # _ =E2= =80=A6) > In ice-9/threads.scm: > 390:8 16 (_ _) > In ice-9/boot-9.scm: > 2726:13 15 (_) > In ice-9/threads.scm: > 390:8 14 (_ _) > In ice-9/boot-9.scm: > 2994:20 13 (_) > 2312:4 12 (save-module-excursion #) > 3014:26 11 (_) > In unknown file: > 10 (primitive-load-path "guix/scripts/offload" #) > In ice-9/eval.scm: > 721:20 9 (primitive-eval (define-module (guix scripts offload) =E2=80= =A6)) > In ice-9/psyntax.scm: > 1262:36 8 (expand-top-sequence ((define-module (guix # #) # # =E2=80= =A6)) =E2=80=A6) > 1209:24 7 (parse _ (("placeholder" placeholder)) ((top) #(# # =E2=80= =A6)) =E2=80=A6) > 285:10 6 (parse _ (("placeholder" placeholder)) (()) _ c&e (eval) =E2= =80=A6) > In ice-9/eval.scm: > 293:34 5 (_ #) > In ice-9/boot-9.scm: > 2874:4 4 (define-module* _ #:filename _ #:pure _ #:version _ # _ =E2= =80=A6) > 2887:24 3 (_) > 222:17 2 (map1 (((ssh key)) ((ssh auth)) ((ssh session)) ((=E2=80=A6)= ) =E2=80=A6)) > 2803:6 1 (resolve-interface _ #:select _ #:hide _ #:prefix _ # _ =E2= =80=A6) > In unknown file: > 0 (scm-error misc-error #f "~A ~S" ("no code for modu=E2=80=A6= " =E2=80=A6) =E2=80=A6) > > ERROR: In procedure scm-error: > no code for module (ssh key) It seems a misconfiguration of your environment. All the best, simon From debbugs-submit-bounces@debbugs.gnu.org Tue Jan 26 09:47:20 2021 Received: (at 46109) by debbugs.gnu.org; 26 Jan 2021 14:47:20 +0000 Received: from localhost ([127.0.0.1]:41164 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l4Pcl-0008AH-NM for submit@debbugs.gnu.org; Tue, 26 Jan 2021 09:47:20 -0500 Received: from knopi.disroot.org ([178.21.23.139]:40492) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l4O07-0001Tn-Co for 46109@debbugs.gnu.org; Tue, 26 Jan 2021 08:03:20 -0500 Received: from localhost (localhost [127.0.0.1]) by disroot.org (Postfix) with ESMTP id C501F55367; Tue, 26 Jan 2021 14:03:17 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at disroot.org Received: from knopi.disroot.org ([127.0.0.1]) by localhost (disroot.org [127.0.0.1]) (amavisd-new, port 10024) with UTF8SMTP id CsrwB7ri0C_5; Tue, 26 Jan 2021 14:03:15 +0100 (CET) To: zimoun , 46109@debbugs.gnu.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=disroot.org; s=mail; t=1611666194; bh=RRzfbtnL4wl+x8g0g8H76mKqvfqG5+1Gl1kI3p1JXHE=; h=To:References:From:Subject:Date:In-Reply-To; b=hQkG5FflrrkTVMEG3+Xm241awEtFdyqxcJBPG8y+nNo/XkFUvEWjy8tEF7LZ0edmr 6A4bkqIG2A9cwymVAcpKC1HRJJ64KeQjGIokPIVuwniRIUHZ9pPDTOFbIcF5YemeG8 GEAC6xGHA6Qzug5tgmY7AftIgnt3jItneU6KfrvtnAOSWzJ9arw5w44JC7AmEpFRru l91Zq/DnNLAplkHP/O7p1kI3yOKRHoiFux98rHKMV1d6bxV5WCfip2VGjV3IEPeLQk 1MTpX/T0NlLSP8HvVWebeZm16fNaE9Dg1qs6tWWBqlT/kCnUZx8RiIn24mY58kL2tv dLJTKe81RYIGA== References: <06a73269-5650-9020-24a7-08c5e7fd3275@disroot.org> <867do0j7b9.fsf@gmail.com> From: taxuswc Subject: Re: bug#46109: Failing tests (guix-pack, lint) Message-ID: Date: Tue, 26 Jan 2021 13:03:13 +0000 Mime-Version: 1.0 In-Reply-To: <867do0j7b9.fsf@gmail.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 46109 X-Mailman-Approved-At: Tue, 26 Jan 2021 09:47:18 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hello, 26.01.2021 10:55, zimoun wrote: > On Mon, 25 Jan 2021 at 22:10, taxuswc--- via Bug reports for GNU Guix wrote: > >> I am building GNU Guix from the source on a foreign distro. Several >> tests fail: > > Which commit are you building using which commit version? Оfficial source tarball from https://guix.gnu.org/en/download/, probably v1.2.0 (d5b556eef57321d0be89fdb07db447b2db2718ed) > Did you do > > guix environment guix > ./bootstrap > ./configure --localstatedir=/var/ > make > make check > > ? Or something else? > Or are you trying to bootstrap Guix on foreign distro? Basically the same steps only without --localstatedir (it seems to default to /var) and guix environment stuff, as guix is not installed in the system yet. I have installed the prerequisites manually or from a foreign distro package manager, so to my mind it probably does not count as ``bootstrapping''. >> FAIL: tests/lint >> ================ > > [...] > > >> test-name: archival: missing content >> location: /home/taxus/downloads/distro/guix/guix-1.2.0/tests/lint.scm:921 >> source: >> + (test-assert >> + "archival: missing content" >> + (let* ((origin >> + (origin >> + (method url-fetch) >> + (uri "http://example.org/foo.tgz") >> + (sha256 (make-bytevector 32)))) >> + (warnings >> + (with-http-server >> + '((404 "Not archived.")) >> + (parameterize >> + ((%swh-base-url (%local-url))) >> + (check-archival >> + (dummy-package "x" (source origin))))))) >> + (warning-contains? "not archived" warnings))) >> actual-value: #f >> actual-error: >> + (keyword-argument-error >> + # >> + "Unrecognized keyword" >> + () >> + (#:verify-certificate?)) >> result: FAIL > > Hum?! I got guile from the foreign distro package manager, so it was an obvious suspect, but upon inspection [1] it is just vanilla guile 2.2.6 without any distro-specific patches. [1] https://gitea.artixlinux.org/artixlinux/packages/src/branch/master/guile/repos/extra-x86_64/PKGBUILD Could you please clarify which additional info can I provide to identify the root of the issue? Maybe, should I try building with guile 3.x? > [...] > >> FAIL: tests/guix-pack >> ===================== >> >> + guile -c '(getaddrinfo "www.gnu.org" "80" AI_NUMERICSERV)' >> + guix pack --version >> guix pack (GNU Guix) 1.2.0 >> Copyright (C) 2020 the Guix authors >> License GPLv3+: GNU GPL version 3 or later >> This is free software: you are free to change and redistribute it. >> There is NO WARRANTY, to the extent permitted by law. > > [...] > >> + tar -xf /home/taxus/downloads/distro/guix/guix-1.2.0/test-tmp/store/az698s2v2q2qnc1ljrg4ypnjpb246x4c-tarball-pack.tar.xz >> tar: ./opt/gnu/bin: Cannot hard link to ‘./opt/gnu/bin’: No such file or directory >> tar: Exiting with failure status due to previous errors >> + chmod -Rf +w /tmp/tmp.QVmTayA5IX >> + rm -rf /tmp/tmp.QVmTayA5IX >> FAIL tests/guix-pack.sh (exit status: 2) Well, the problem is not with tar as I previously assumed. guix pack --bootstrap -S /opt/gnu/bin=bin guile-bootstrap creates the following tarball $ tar -tvf "$the_pack" | grep '/opt/' drwxr-xr-x root/root 0 1970-01-01 03:00 ./opt/gnu/ lrwxrwxrwx root/root 0 1970-01-01 03:00 ./opt/gnu/bin -> ../../home/taxus/downloads/distro/guix/guix-1.2.0/test-tmp/store/w67kdqf2ghkkxp6spdyvfvvhiqqk3g76-profile/bin hrwxrwxrwx root/root 0 1970-01-01 03:00 ./opt/gnu/bin link to ./opt/gnu/bin I can hardly understand how the last line can be correct in any setup. An attempt to unpack the tarball quite expectedly results in tar: ./opt/gnu/bin: Cannot hard link to './opt/gnu/bin': No such file or directory as the hardlink creation erases the file it wants to reference in the first place.. >> >> Backtrace: >> In ice-9/boot-9.scm: >> [...] >> ERROR: In procedure scm-error: >> no code for module (ssh key) > > It seems a misconfiguration of your environment. It is likely the case, however, I would like to setup offloading once guix is working, so for now I have commented out the test in question to get any sort of report. Thanks for the reply! All the best, ~taxuswc