OESF Portables Forum

Everything Else => Zaurus Distro Support and Discussion => Distros, Development, and Model Specific Forums => Archived Forums => Angstrom & OpenZaurus => Topic started by: BeKind on July 05, 2005, 10:28:45 pm

Title: Ipkg-link Mount Overwrites Links To Runcompat
Post by: BeKind on July 05, 2005, 10:28:45 pm
Whenever I run packagemanager and install a new package, and consequently run ipkg-link mount, it changes all of my links in opt/qtpalmtop/bin that were linking to runcompat.

Is there something I can do to stop this from happening every time I run ipkg-link mount, so that I don't have to run makecompat again on all my software that uses the alternate libs?
Title: Ipkg-link Mount Overwrites Links To Runcompat
Post by: acpkendo on July 06, 2005, 01:09:25 pm
You can use "ipkg-link add <packagename>" instead, although you'll have to do so for each package you installed independently.  Although, if you're using the (GUI) package manager, you shouldn't have to use ipkg-link at all--it should do so for you.
Title: Ipkg-link Mount Overwrites Links To Runcompat
Post by: lardman on July 06, 2005, 01:29:23 pm
Would it be possible to run makecompat on the files before they are symlinked - so the file which gets symlinked by ipkg-link is itself already makecompat'ed

Otherwise I agree this is an issue,


Si
Title: Ipkg-link Mount Overwrites Links To Runcompat
Post by: CoreDump on July 06, 2005, 02:00:05 pm
Code: [Select]
add () {
    echo "*** Adding $PACKAGE"
    echo "$files" |
    while read line; do
* * * * The next line is causing the problem * * * *
  test -L "$line" && rm "$line"
  if [ ! -e "$line" ]; then
      # Only if it doesn't already exist.
      if [ -d "$PREFIX$line" ]; then
    # It's a directory.
    `mkdir "$line"`
      else
    # It's a file.
    [ ! -d `dirname $line` ] && mkdir -p `dirname $line`
    `ln -s "$PREFIX$line" "$line"`
      fi
  fi
    done
}

I'd rather not remove this line alltogether. It's there as a failsafe in case there already exists a symlink which points to a wrong location (think b0rked install to a different target)

One should probably check where the symlink is pointing to and not remove it when it
points to QtPalmtop.compat/*

Code: [Select]
    
if test -L "$line"
then
    ls –al “$line” | grep –q QtPalmtop.compat || rm "$line"
fi

Should do the trick.