From owner-freebsd-bugs@freebsd.org Mon Aug 12 19:23:54 2019 Return-Path: Delivered-To: freebsd-bugs@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 18644BE318 for ; Mon, 12 Aug 2019 19:23:54 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from mailman.nyi.freebsd.org (unknown [127.0.1.3]) by mx1.freebsd.org (Postfix) with ESMTP id 466m3s6zDsz3LhC for ; Mon, 12 Aug 2019 19:23:53 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: by mailman.nyi.freebsd.org (Postfix) id ED7BFBE317; Mon, 12 Aug 2019 19:23:53 +0000 (UTC) Delivered-To: bugs@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id ED3A3BE316 for ; Mon, 12 Aug 2019 19:23:53 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 466m3s5y3xz3Lh9 for ; Mon, 12 Aug 2019 19:23:53 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from kenobi.freebsd.org (kenobi.freebsd.org [IPv6:2610:1c1:1:606c::50:1d]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id AFCE83715 for ; Mon, 12 Aug 2019 19:23:53 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from kenobi.freebsd.org ([127.0.1.5]) by kenobi.freebsd.org (8.15.2/8.15.2) with ESMTP id x7CJNrGu072124 for ; Mon, 12 Aug 2019 19:23:53 GMT (envelope-from bugzilla-noreply@freebsd.org) Received: (from www@localhost) by kenobi.freebsd.org (8.15.2/8.15.2/Submit) id x7CJNrAw072122 for bugs@FreeBSD.org; Mon, 12 Aug 2019 19:23:53 GMT (envelope-from bugzilla-noreply@freebsd.org) X-Authentication-Warning: kenobi.freebsd.org: www set sender to bugzilla-noreply@freebsd.org using -f From: bugzilla-noreply@freebsd.org To: bugs@FreeBSD.org Subject: [Bug 239806] pkgbase: Unset dependencies in some pkgbase packages Date: Mon, 12 Aug 2019 19:23:53 +0000 X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Base System X-Bugzilla-Component: misc X-Bugzilla-Version: CURRENT X-Bugzilla-Keywords: X-Bugzilla-Severity: Affects Only Me X-Bugzilla-Who: martin.jakob@gmx.com X-Bugzilla-Status: New X-Bugzilla-Resolution: X-Bugzilla-Priority: --- X-Bugzilla-Assigned-To: bugs@FreeBSD.org X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_id short_desc product version rep_platform op_sys bug_status bug_severity priority component assigned_to reporter Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: https://bugs.freebsd.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 12 Aug 2019 19:23:54 -0000 https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D239806 Bug ID: 239806 Summary: pkgbase: Unset dependencies in some pkgbase packages Product: Base System Version: CURRENT Hardware: Any OS: Any Status: New Severity: Affects Only Me Priority: --- Component: misc Assignee: bugs@FreeBSD.org Reporter: martin.jakob@gmx.com I am trying to visualize the dependencies of the pkgbase packages. To produce the dot file for use with graphviz, i used a shell script greping and seding the ucl files in the worldstage directory (see below). After some fiddling i got a dot file graphviz could work with. You can create one by your self, running the script and using the resulting output in a online graphviz tool like http://www.webgraphviz.com/ or=20 https://stamm-wilbrandt.de/GraphvizFiddle/#=20 I will describe some ascpects of the resulting diagramm. - the biggest node is the runtime package, a lot of packages depend on it. - runtime itself depends only on the clibs package. - clibs has dependent packages: clibs-debug, clibs-development, clibs-lib32, clibs-lib32-debug, clibs-lib32-development, clibs-lib32-profile, clibs-profile - some packages depend on runtime, as mentioned, and have some dependent packages, e.g -> ssh depends on runtime -> these packages depend on the ssh packages: ssh-debug, ssh-development, ssh-lib32, ssh-lib32-debug, ssh-lib32-development, ssh-lib32-profile, ssh-profile - there are other packages which depend on runtime, but the "subpackages" do not depend on the package itself, e.g -> jail depends on runtime -> these packages depend also on runtime instead of jail: jail-debug, jail-development, jail-lib32, jail-lib32-debug, jail-lib32-development - there are a LOT of packages which are standalone in the diagramm, e.g sendmail, the dependent packages sendmail-debug, sendmail-development, sendmail-lib32, sendmail-lib32-debug, sendmail-lib32-development, sendmail-lib32-profile, sendmail-profile are standalone as well. - there is a mixture of the above, for example the runtime has dependent=20 packages as mentioned above and these standalone packages: runtime-lib32-debug, runtime-lib32-development, runtime-lib32-profile as far as i can see, the dependencies are defined in the script /usr/src/release/packages/generate-ucl.sh. In there, some names are hardcoded, like "runtime", "runtime_*", "jail_*". Others are handled as wildcards, like "*_lib32", "*_lib32_development", "*_lib32_debug", ... which often do not depend on their "root" package. While the "named" packages have their own ucl file, these wildcard packages are using the template.ucl file, which does not contain the "deps:" attribute. Script to create the graphviz dot file: ---8<---8<---8<---8<---8<---8<---8<---8<---8< #!/bin/sh echo "digraph pkgdeps {" echo " graph [center=3D0 rankdir=3DTD ];" ( for PKG in /usr/obj/usr/src/amd64.amd64/worldstage/*.ucl { PKG_NAME=3D${PKG##*/} PKG_DEPS=3D$(grep -h -A 1 deps ${PKG} | tail -n 1 | sed -e 's/^[ \t= ]*//' -e 's/FreeBSD-//g' -e 's/"//g' -e 's/: {//g') if [ ! ${PKG_DEPS} =3D "" ]; then echo " \"${PKG_NAME%.ucl}\" -> \"${PKG_DEPS}\";" else echo " \"${PKG_NAME%.ucl}\";" fi } ) | sort echo "}" --->8--->8--->8--->8--->8--->8--->8--->8--->8 -- Martin --=20 You are receiving this mail because: You are the assignee for the bug.=