On 04/08/2013 05:28 PM, Gene Czarcinski wrote: > 1. Add virtcli to data_files[] > > 2. Add code to wrapper created in my_build() to determine > the directory the wrapper script is located and then > execute the python program which is located releative s/releative/relative/ > to that directory. For real system installs, this > directory will be "/usr/bin". > > 3. Update virt-manager.spec for the virtcli directory. > . > Signed-off-by: Gene Czarcinski <gene@xxxxxxxxx> > --- > setup.py | 15 +++++++++++++-- > virt-manager.spec | 1 + > 2 files changed, 14 insertions(+), 2 deletions(-) > > diff --git a/setup.py b/setup.py > index e98561e..3a51e22 100644 > --- a/setup.py > +++ b/setup.py > @@ -81,10 +81,20 @@ class my_build(build_extra): > os.mkdir("build") > > for app in cmds: > - sharepath = os.path.join(cliconfig.asset_dir, app) > + sharepath = os.path.join("../share/virt-manager", app) > > wrapper = "#!/bin/sh\n\n" > - wrapper += "exec \"%s\" \"$@\"" % (sharepath) > + wrapper += "SOURCE=\"${BASH_SOURCE[0]}\"\n" > + wrapper += " # resolve $SOURCE until the file is no longer a symlink\n" > + wrapper += "while [ -h \"$SOURCE\" ]; do\n" > + wrapper += " DIR=\"$( cd -P \"$( dirname \"$SOURCE\" )\" && pwd )\"\n" > + wrapper += " SOURCE=\"$(readlink \"$SOURCE\")\"\n" > + wrapper += " # if $SOURCE was a relative symlink, we need to resolve it\n" > + wrapper += " # relative to the path where the symlink file was located\n" > + wrapper += " [[ $SOURCE != /* ]] && SOURCE=\"$DIR/$SOURCE\"\n" > + wrapper += "done\n" > + wrapper += "DIR=\"$( cd -P \"$( dirname \"$SOURCE\" )\" && pwd )\"\n\n" > + wrapper += "exec \"$DIR/%s\" \"$@\"" % (sharepath) > Using r"unescaped string" would make the wrapper script more readable, even better would be using triple quotation marks. Other than that, it looks ok. Martin _______________________________________________ virt-tools-list mailing list virt-tools-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/virt-tools-list