El Mon, 2 Apr 2007 10:17:34 -0700
"Carlo Calica" <[EMAIL PROTECTED]> escribi__:
> A quick look at DisableProgram suggests it'll be fine. Thanks a lot
> for testing and providing patches.
>
>
DisablePrograms doesn't work very well with detached programs, it
removes current link under /Programs/app_name, but it can't unlink
files becouse links does not point to /P but to anywhere $goboInstall
points (/Depot/Programs) in my case.
Btw, what means the last TODO in the file, is yet active? current is
removed when program is disabled.
Here is the patch to solve that, i tested it with some programs
(under /Programs and under /Depot/Programs) and seems to work fine.
--- PATCH
--- /Depot/Users/eof/srcs/GoboCVS/tools/Scripts/bin/DisableProgram
2007-03-30 10:48:51.000000000 +0200
+++ /Programs/Scripts/CVS/bin/DisableProgram 2007-04-02
19:45:15.000000000 +0200
@@ -5,6 +5,7 @@
Import GoboLinux
Import Log
Import OptionParser
+Import Directories
### Options
###################################################################
@@ -30,34 +31,38 @@
else versionnumber=`Get_Version "$programname" "Current"`
fi
-prefix="${goboPrograms}/$programname/$versionnumber"
+# Enabled support to disable detached programs. (Aitor)
+programdir="${goboPrograms}/$programname/$versionnumber"
+installdir=`Get_Dir install "$programname" "$versionnumber"`
-Is_Directory "$prefix" || Die "$programname version $versionnumber was
not found."
+[ -z $installdir ] && installdir=$programdir
+
+Is_Directory "$installdir" || Die "$programname version $versionnumber
was not found."
Log_Normal "Disabling ${programname}, version ${versionnumber}."
-disabled="${goboPrograms}/$programname/$versionnumber-Disabled"
+disabled="${installdir}-Disabled"
if [ "`Get_Version "$programname" "Current"`" == "$versionnumber" ]
then
rm -rf ${goboPrograms}/$programname/Current
fi
-mv "$prefix" "$disabled" || Die "Couldn't disable $programname
$versionnumber."
+mv "$installdir" "$disabled" || Die "Couldn't disable $programname
$versionnumber."
filesdir=$(Get_System_Paths "$disabled")
Log_Normal "Removing links..."
RemoveBroken $filesdir || Die "Couldn't cleanup links."
-if [ -f ./Resources/UnmanagedFiles ] && ! Is_Entry "unmanaged" "keep"
+if [ -f ${installdir}/Resources/UnmanagedFiles ] && ! Is_Entry
"unmanaged" "keep"
then
- { Is_Entry "unmanaged" "ask" && ! Ask "There are unmanaged files
present. Do you want to remove them?"; } || Uninstall_Unmanaged_Files
"${goboPrograms}/$programname/$versionnumber-Disabled/Resources/UnmanagedFiles"
+ { Is_Entry "unmanaged" "ask" && ! Ask "There are unmanaged files
present. Do you want to remove them?"; } || Uninstall_Unmanaged_Files
"${disabled}/Resources/UnmanagedFiles"
fi
Gen_Env_Cache
-mv "$disabled" "$prefix" || Die "Please check $disabled."
+mv "$disabled" "$installdir" || Die "Please check $disabled."
Log_Normal "${programname} ${versionnumber} disabled."
# TODO unlink current if it's the one that was disabled.
--- END
P.D, Now that i can't go to work i'm glad to learn how gobo works in deep.
Greets,
Aitor
--
... Bardulia quae nunc vocatur Castella ...
_______________________________________________
gobolinux-devel mailing list
[email protected]
http://lists.gobolinux.org/mailman/listinfo/gobolinux-devel