This morning I was annoyed by a perl module which took the output from yumdownloader –resolve –urls, screenscraped it, downloaded the pkgs then passed them to rpm -Uvh. Let’s ignore all the things which could break there – just the ugliness of it.

So I hashed this together:

I’m not sure I like it yet, but it is a start.

You can pass multiple items on the command line doing multiple things like:

yumpipes –install=foo –install=baz –update=quux –remove=sendmail

and you can pass –dry-run which runs the transaction in test mode

and you can pass –report-only  which only spits out what the transaction would do.

and the output from the transaction and from the –list option is pipe-delimited so people using awk or cut can easily parse it.

finally. the error codes, while not great, are somewhat consistent.

flames welcome.