Off-Topic > SCM EXtensions
I vote for ... (see the post) as scm ->
Rich:
Hi AbNoRMiS
Removing a tcz sounds like a simple task. Have a script check the extensions dependencies, see if they are
required by any other installed extensions, and simply remove them if they are not required, right? Wrong.
What if one of the dependencies is a stand alone application that you want to keep. Here's an example:
You install gcc.tcz to compile some programs you are working on. You decide to try an IDE so you install
codeblocks.tcz. Then you decide codeblocks isn't right for you so you uninstall it. Since gcc is a dependency
of codeblocks, your compiler will be removed. Without human intervention, the script has no way of knowing
you want to keep this application. No tool could know this. That's why AppsAudit shows you a list of which
dependencies will be removed and gives you the opportunity to modify that list. Although not with those
particular two extensions, that is exactly what happened to me once. That is one of the problems an SCM
can potentially solve. Another thing an SCM addresses is when an application needs a specific version of
a library that might otherwise conflict with the default library installed on the system.
AbNoRMiS:
sorry, Rich, i talking about only unloading tcz but not about removing them
any unloaded tcz even by mistake can be downloaded again if needed
the more so the AppsAudit could provide a choice which tcz not to unload
here i don't see the problem and don't see the potential advantages from scm
i agree about some programs which working with specific libraries versions
this applies to some non-free programs, for example avast4workstation
but why should duplicate the entire repo of tcz with open source code?
Rich:
Hi AbNoRMiS
As I said, AppsAudit does provide a choice to remove individual items from the list of items to remove. My
point was that you still need to look at it. There also the matter removing links that are created.
AmatCoder:
--- Quote from: Rich on February 25, 2012, 10:09:11 PM ---Removing a tcz sounds like a simple task. Have a script check the extensions dependencies, see if they are
required by any other installed extensions, and simply remove them if they are not required, right? Wrong.
What if one of the dependencies is a stand alone application that you want to keep. Here's an example:
You install gcc.tcz to compile some programs you are working on. You decide to try an IDE so you install
codeblocks.tcz. Then you decide codeblocks isn't right for you so you uninstall it. Since gcc is a dependency
of codeblocks, your compiler will be removed. Without human intervention, the script has no way of knowing
you want to keep this application. No tool could know this[...]
--- End quote ---
I see the others advantages from scm extensions, but I believe that can be done with tcz extensions with some kind of 'reference counting'.
Example:
tce-load could store how extension was loaded (0:manually or 1:from dep file). So only extensions loaded from dep file will be unmounted.
Also it should check that extensions from dep files are not needed by other extensions that are still mounted.
It's not trivial but technically possible, I believe.
Rich:
Hi AmatCoder
While that would probably work, I don't think it's worth adding the complexity of trying to keep track of how every
extension was installed for a few reasons. Most users don't (hopefully) spend all their time installing and uninstalling
extensions. While my example was real, I don't know how many other instances like that there are. I was just trying
to point out that there are possible pitfalls to consider. Also, based on past history, there will be individuals who
insist on bypassing the system and installing/removing things manually, and breaking that mechanism in the
process.
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version