Recent Joyride builds busted bad
Marcus Leech
mleech at nortel.com
Mon Dec 17 21:55:03 EST 2007
Dennis Gilmore wrote:
>
> you only explicity Require packages you need to run. on my system for instance
> [dennis at files ~]$ rpm -q --whatrequires findutils
> mkinitrd-6.0.19-4.fc8
> java-1.5.0-gcj-1.5.0.0-17.fc8
> man-1.6e-3.fc7
> prelink-0.4.0-1
> rpm-build-4.4.2.2-7.fc8
> rpmdevtools-6.4-1.fc8
>
> so we dropped mkinitrd we dont use java we dont provide man we are not
> prelinking and we dont provide utilities for building rpm.
>
>
> it is a similiar story for tar gzip bzip2 cpio
>
> So because we strip things down we need a way for useful standard utilities.
> I would suggest that we include everything we really want in pilgrim
> explicitly or we add them as Requires for olpc-utils
>
>
Here's an interesting example:
$ rpm -q --whatrequires grep
tcsh-6.14-15
sgml-common-0.6.3-20.fc7
MAKEDEV-3.23-1.2
xml-common-0.6.3-20.fc7
docbook-dtds-1.0-30.1
autoconf-2.61-8.fc7
microcode_ctl-1.13-1.37.fc7
irda-utils-0.9.18-2.fc7
sysreport-1.4.3-10
logwatch-7.3.4-6.fc7
prelink-0.3.10-1
hal-0.5.9-8.fc7
mkinitrd-6.0.9-7.1
krb5-libs-1.6.1-4.fc7
krb5-workstation-1.6.1-4.fc7
rpm-build-4.4.2.2-2.fc7
nfs-utils-1.1.0-4.fc7
$ grep grep /etc/init.d/*
autofs-5.0.1-29/etc/init.d/autofs: if ! grep -q autofs /proc/filesystems
/etc/init.d/autofs: elif ([ -f /proc/modules ] && lsmod) | grep -q
autofs[^4]
/etc/init.d/bluetooth: grep -v '^#' $UART_CONF | while read i; do
/etc/init.d/cpuspeed: if [ "${governor}" != "none" -a `/sbin/lsmod |
grep -c -w "cpufreq.${governor}"` -ge 1 ]; then
/etc/init.d/cpuspeed: if [ `grep -c -w ${governor}
${cpu0freqd}/scaling_available_governors` -ge 1 ]; then
/etc/init.d/firstboot: if [ -f "$FILENAME" ] && ! grep -q
'^RUN_FIRSTBOOT=YES' "$FILENAME"; then
/etc/init.d/firstboot: if grep -i reconfig /proc/cmdline >/dev/null ||
[ -f /etc/reconfigSys ]; then
/etc/init.d/firstboot: if grep -q "^id:5:initdefault:" /etc/inittab &&
[ "x$runlevel" = x5 ]; then
/etc/init.d/functions: egrep -iv "no block devices found|No RAID
disks" | \
/etc/init.d/fuse: if ! grep -qw fuse /proc/filesystems; then
/etc/init.d/fuse: if grep -qw fusectl /proc/filesystems && \
/etc/init.d/fuse: ! grep -qw $MOUNTPOINT /proc/mounts; then
/etc/init.d/fuse: if ! grep -qw fuse /proc/filesystems; then
/etc/init.d/fuse: if grep -qw $MOUNTPOINT /proc/mounts; then
/etc/init.d/fuse: if grep -qw "^fuse" /proc/modules; then
/etc/init.d/fuse: if ! grep -qw fuse /proc/filesystems; then
/etc/init.d/halt: if /sbin/dmsetup info "$dst" | grep -q
'^Open count: *0$'; then
/etc/init.d/halt:grep -q "\(alsa\)" /proc/devices
/etc/init.d/hsqldb: ls -ld "$_AUTH_TEST_PATH" | grep '^-..------' >
/dev/null 2>&1 || {
/etc/init.d/httpd: if LANG=C grep -Eiq "^[[:space:]]*($GONE)"
$CONFFILE; then
/etc/init.d/ip6tables:/sbin/modprobe --version 2>&1 | grep -q
module-init-tools \
/etc/init.d/ip6tables: || ref=$(lsmod | grep ^${mod} | cut -d "[" -s -f
2 | cut -d "]" -s -f 1)
/etc/init.d/ip6tables: if grep -q "^${mod}" /proc/modules ; then
/etc/init.d/ip6tables: && grep -qIsE
"^install[[:space:]]+${_IPV}[[:space:]]+/bin/(true|false)"
/etc/modprobe.conf /etc/modprobe.d/* ; then
/etc/init.d/iptables:/sbin/modprobe --version 2>&1 | grep -q
module-init-tools \
/etc/init.d/iptables: || ref=$(lsmod | grep ^${mod} | cut -d "[" -s -f
2 | cut -d "]" -s -f 1)
/etc/init.d/iptables: if grep -q "^${mod}" /proc/modules ; then
/etc/init.d/iptables: && grep -qIsE
"^install[[:space:]]+${_IPV}[[:space:]]+/bin/(true|false)"
/etc/modprobe.conf /etc/modprobe.d/* ; then
/etc/init.d/isdn: if lsmod | grep "^$MODULE" >/dev/null 2>&1 ; then
/etc/init.d/isdn: interfaces="$(cat /proc/net/dev 2>/dev/null | egrep
"(ippp*|isdn*)" | cut -f1 -d:)"
/etc/init.d/kudzu: grep -q "^id:5:initdefault:" /etc/inittab &&
telinit 5
/etc/init.d/lm_sensors:if grep -q sysfs /proc/mounts; then
/etc/init.d/lm_sensors:grep '^MODULE_' $CONFIG >/dev/null 2>&1 || exit 0
/etc/init.d/lm_sensors: modules=`grep \^MODULE_ $CONFIG | wc -l | tr -d ' '`
/etc/init.d/lm_sensors: modules=`grep \^MODULE_ $CONFIG | wc -l | tr -d ' '`
/etc/init.d/mdmonitor: grep '^\(MAILADDR\|PROGRAM\) .'
/etc/mdadm.conf >/dev/null 2>&1 || return 6
/etc/init.d/microcode_ctl: vendor=`grep "^vendor_id" /proc/cpuinfo
| head -n1 | awk -F ": " '{ print $2 }'`
/etc/init.d/microcode_ctl: family=`grep "^cpu family" /proc/cpuinfo
| head -n1 | awk -F ": " '{ print $2 }'`
/etc/init.d/netconsole: if echo $route | grep -q " via " ; then
/etc/init.d/netconsole: if /sbin/lsmod | grep netconsole >/dev/null 2>&1
; then
/etc/init.d/netconsole: if /sbin/lsmod | grep netconsole >/dev/null 2>&1
; then
/etc/init.d/network: eval $(LANG=C fgrep "DEVICE=" ifcfg-$i)
/etc/init.d/network: eval $(LANG=C fgrep "TYPE=" ifcfg-$i)
/etc/init.d/network: eval $(LANG=C fgrep "SLAVE=" ifcfg-$i)
/etc/init.d/network: if LANG=C egrep -L
"^ONBOOT=['\"]?[Nn][Oo]['\"]?" ifcfg-$i > /dev/null ; then
/etc/init.d/network: if ! LANG=C egrep -L
"^ONBOOT=['\"]?[Nn][Oo]['\"]?" ifcfg-$i >/dev/null 2>&1 ; then
/etc/init.d/network: grep "^any" /etc/sysconfig/static-routes |
while read ignore args ; do
/etc/init.d/network: eval $(LANG=C fgrep "DEVICE=" ifcfg-$i)
/etc/init.d/network: eval $(LANG=C fgrep "TYPE=" ifcfg-$i)
/etc/init.d/ntpd: echo "$tickers" | grep -qi '[a-z0-9]' &&
dostep=yes || tickers=''
/etc/init.d/ntpd: egrep -v '127\.127\.[0-9]+\.[0-9]+')
/etc/init.d/ntpd: # -g can replace the grep for time servers
/etc/init.d/rpcgssd: RPCMTAB=`grep -v '^#' /proc/mounts | \
/etc/init.d/rpcgssd: if ! /sbin/lsmod | grep
sunrpc > /dev/null ; then
/etc/init.d/rpcgssd: RPCMTAB=`grep -v '^#'
/proc/mounts | \
/etc/init.d/rpcgssd: if ! /sbin/lsmod | grep
$i > /dev/null ; then
/etc/init.d/rpcidmapd: RPCMTAB=`grep -v '^#' /proc/mounts | \
/etc/init.d/rpcidmapd: if ! /sbin/lsmod | grep
sunrpc > /dev/null ; then
/etc/init.d/rpcidmapd: RPCMTAB=`grep -v '^#'
/proc/mounts | \
/etc/init.d/rpcsvcgssd: RPCMTAB=`grep -v '^#' /proc/mounts | \
/etc/init.d/rpcsvcgssd: if ! /sbin/lsmod | grep
sunrpc > /dev/null ; then
/etc/init.d/rpcsvcgssd: RPCMTAB=`grep -v '^#'
/proc/mounts | \
/etc/init.d/rpcsvcgssd: if ! /sbin/lsmod | grep
$i > /dev/null ; then
/etc/init.d/squid: grep cache_dir | awk '{ print $3 }'`
/etc/init.d/tomcat5: pid="$(pgrep -u tomcat java)"
/etc/init.d/tomcat5: until [ "$(ps --pid $kpid | grep -c
$kpid)" -eq "0" ] || \
/etc/init.d/tux:NRCPUS=$(cat /proc/cpuinfo | grep '^processor[ 0-9]*:'
| wc -l)
/etc/init.d/xfs: if ls | grep -iqs '\.ot[cf]$' ; then
/etc/init.d/xfs: elif ls | grep -iqs '\.tt[cf]$' ; then
/etc/init.d/xfs: elif ls | grep -Eiqsv
'(^fonts\.(scale|alias|cache.*)$|.+(\.[ot]t[cf]|dir)$)' ; then
/etc/init.d/ypbind: NISDOMAIN=`grep "domain"
/etc/yp.conf | grep -v ^# | \
/etc/init.d/ypbind: /usr/sbin/rpcinfo -p | LC_ALL=C fgrep -q
ypbind && \
What this means to me is that the dependency graphs are wildly
incomplete, and that you could run into all kinds of trouble
assuming that they *are* complete.
More information about the Devel
mailing list