On 3/25/09 4:43 AM, Alan McKinnon wrote:
On Wednesday 25 March 2009 12:38:53 David wrote:
I wrote an entry in my blog about gentoo, and created a little script to
make gentoo handling a bit easier, and whant to share it will all gentoo
users to see if it could help them to understand gentoo better (specially
for noob ones), and simplify its handling.

I think it is not spam, since it could help others (I hope so).

The link: http://stormbyte.blogspot.com/2009/03/gentoo-easy-handling.html

David.

It's far too simplistic. It doesn't take account of dependencies that must
also be masked/unmasked/whatever and will cause obscure error messages that
will confuse the user more than simply using portage.


HAHAHA!  Yeah, that's why I wrote the poorly received "bastard"

Good luck with it. I think it kicks ass, and totally ignores everything. I use this everywhere.

e.g.

 bastard =gnome-2.18"*"
 bastard =nginx-0.7"*"
 bastard =postgresql-server-8.3"*"

Unmasking-the-new-Gnome/KDE-ly Yours,
  Joshua
#!/bin/bash

echo "Bastard.sh - mass unmasker."
echo "Note to self: unmasking packages is fun and exciting, but may be 
dangerous."
echo "Ensure you have a backup, or a box of tissues.  It's possible to cause 
system b0rkage."
echo "For instance: Be very wary of unmasking portage releases."
echo "Ctrl-C to abort"
sleep 3

if [ "${1}" == "" ]; then
    echo "usage: ${0} <package spec>"
    echo " e.g.  ${0} =gnome-base/gnome-2.14*"
    echo "note: please use the version, otherwise it only examines the masked 
revisions"
    exit
fi

while [ 1 ]; do
    FULL=`emerge -pv $*`
    PM=`echo "${FULL}" | grep '^-.*masked by.*package.mask'|cut -d ' ' -f 2`
    PK=`echo "${FULL}" | grep '^-.*masked by.*\~.*keyword'|cut -d ' ' -f 2`
    RES=$?
    if [ ${RES} == 0 ] && [ "${PM}" == "" ] && [ "${PK}" == "" ]; then
        FILE=/tmp/$$.`basename ${0}`.log
        echo "Full: ${FULL}" > ${FILE}
        echo "See ${FILE} for the final message, however this looks complete."
        cat ${FILE} | grep '^\[block' > /dev/null && echo "You have blocked 
packages, however once resolved you should be able to merge successfully."
        break
    fi
    for x in ${PM}; do
        echo "Unmask: ${x}"
        echo "=${x}*" >> /etc/portage/package.unmask
    done
    for x in ${PK}; do
        echo "Keywords: ${x}"
        echo "=${x}*     ~x86" >> /etc/portage/package.keywords
    done
done

Reply via email to