BOTCH-Y-U-B-D...IVE-ESSENTIAL(1)

πŸ’… BOTCH-Y-U-B-D...IVE-ESSENTIAL(1) πŸ’…

okay bestie, so this one lives in the botch tools section of the manual, and it's called botch-y-u-b-d-transitive-essential. yes the name is a whole mouthful, we know, we love her anyway. she's here to tell you why source packages are B-D transitive essential, and honestly? she ate. πŸ“


✨ NAME ✨

botch-y-u-b-d-transitive-essential β€” find out why source packages are B-D transitive essential.


πŸ¦‹ SYNOPSIS πŸ¦‹

botch-y-u-b-d-transitive-essential [options] architecture Packages
Sources [pkgname]

🌸 DESCRIPTION 🌸

So the whole vibe here is: find the reasons why source packages are B-D transitive essential. Like, detective mode, but for build dependencies. πŸ”

She assumes that Architecture:all packages need not be bootstrapped β€” no cap, that's just the rule she rolls with.

And she operates on the strong dependency graph, which is the important part, iykyk.

If you drop an optional package name as the very last argument? That limits the output to just that package. lowkey so handy. πŸ’…


πŸ‘‘ OPTIONS πŸ‘‘

  • -h, --help β€” display help. the classic. she'll tell you what's up.
  • -k, --keep β€” keep the temporary files. don't be shy, hoard them a little. πŸŽ€
  • -T, --timers β€” time all program executions. clock it, bestie. ⏱️
  • -o, --output=DIR β€” output directory. default is the current directory.
  • -t, --tmp=DIR β€” temporary directory. default is created by mktemp(1).
  • -v, --verbose β€” be more verbose. she will yap (affectionately). πŸ’–
  • -d, --debug β€” maximum verbosity. she will YAP.
  • -D, --develop β€” execute tools from the source checkout instead of $PATH. for the dev girlies. ✨

🌈 EXAMPLE 🌈

Wanna find out why src:sysvinit is b-d-transitive-essential? Run:

botch-y-u-b-d-transitive-essential amd64 Packages Sources sysvinit

okay but real talk β€” edges from installation sets to source packages (that's the builds-from relationships) can be genuinely hard to diagnose. no shame if you're staring at it like 😭.

So here's the trick: you can use dose-ceve to create a graph that doesn't condense binary packages to their installation sets. The trade-off? This has the disadvantage that also non-strong dependencies are also included. so like, more info, but messier. pick your fighter. πŸ™ˆ

dose-ceve -G pkg -T dot --deb-native-arch=amd64 --deb-builds-from --deb-drop-b-d-indep deb://Packages debsrc://Sources > graph.dot
botch-graph-shortest-path graph.dot - --source __ID__:"src:build-essential (= 12.2)" --target __ID__:"src:sysvinit (= 2.88dsf-59.8)" > out.dot
xdot out.dot

πŸ’€ BUGS πŸ’€

See <http://bugs.debian.org/botch>. (yes, bugs exist. we're all just out here living.) 🫢


⭐ SEE ALSO ⭐

Debian doc-base Manual /usr/share/doc/botch/wiki/Home.html


πŸ’œ AUTHOR πŸ’œ

This man page was written by Johannes Schauer. Botch is written by Johannes Schauer and Pietro Abate. absolute icons, the both of them. πŸ‘‘


Copyright 2012-2014 Johannes Schauer, Pietro Abate

This program 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 3 of the License, or (at your option) any later version. A special linking exception to the GNU Lesser General Public License applies to this library, see the COPYING file for more information.


and that's the whole page, bestie. every flag, every path, every __ID__, untouched. slay. πŸ’…βœ¨

perl v5.36.0 Β· 2023-02-17 β€” mwah, catch you in the next man page. πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from