Tool Others Vambropy [v1.15.01]: VaM packages & user content database, management, and a complement to VarBrowser

commondi32

Newbie
Jul 16, 2020
51
47
Thanks Johanna_S too for your feedback! In response to that, I am already working on adding a dependency usage row, so you can instantly see which packages are the most demanded by other packages. That feature borrowed from the Hub is already implemented for each package individually and on demand, and this would replace that and update the entire packages db with this data, on every refresh or application start (I have yet to see performance impact). While not exactly that ideal dream you mentioned, I think it would help a lot in that direction.

About usage statistics, thanks qube21 for the research. I think maybe we could try it as separate application? sort of daemon that sits in background scanning for changes in AddonPackages' date accessed info each X minutes, filling a table with data like package name, date accessed; then build some stats functions around it and send some usage percentage or accumulative 'uses' number to the vambropy db.
But, a thing to consider I do not know yet: if moving a var between directories would change that 'accessed' info it would be inconvenient for true stats, so it would require additional checking, like "if var was moved, do not count it".
Stats by package could then be sent to a vambropy's database field. And the app could optionally activate it.
EDIT: A vam plugin logging those accesses from inside would be the best option IMHO, but I do not now about coding vam plugins.

So, back to work... a lot of work to do lol!
 
Last edited:

commondi32

Newbie
Jul 16, 2020
51
47
I forgot about deleting... As qube21 said and, for an app that still in process of implementing UI and stuff, it could be dangerous and we do not want users afraid of using it because accidentally deleting stuff (I have read it happened to Browser Assists with var management and maybe some other app...) In a future release, when everything is solid, clear and working perfectly, the app could offer some advanced options, 'messing with vars' kind of stuff.
Most likely a "delete from db + move outside AddonPackages/AllPackages" option will be fine, i.e DisabledPackages directory, letting users decide on later to manually remove.
 

Yodzilla

New Member
Jul 21, 2023
1
0
This tool looks like exactly what I've been looking for but I feel like a dummy as I'm not entirely sure how to get it to do what I want. I have a bunch of addons installed that I'd like to uninstall along with their dependencies as long as they're not being used by OTHER addons. For example in the attached image I have SuperVamDeepthroat selected and it has a bunch of dependencies. What sequence of actions do I take to uninstall it and its dependencies that won't break other things? Install/Uninstall or Install+Deps/Uninstall just makes the package name turn green. Am I missing something fundamental here?

Also, what's the difference between the list of dependencies to the right of the package like and the one under it?

1747700004145.png
 

commondi32

Newbie
Jul 16, 2020
51
47
What sequence of actions do I take to uninstall it and its dependencies that won't break other things? Install/Uninstall or Install+Deps/Uninstall just makes the package name turn green. Am I missing something fundamental here?
It is not (yet) like a linux package manager that allows to uninstall but to keep packages currently used by other packages. Install/uninstall is moving packages the same way Varbrowser does. In fact, Varbrowser only has option to uninstall all, but it is not a big deal. Varbrowser is designed to keep VaM fast, so you install packages and when you accumulate too much it slows down, then uninstal all and start again. What this app does is helping Varbrowser, to easily install bunch of packages that you know, and also you can store them as lists, and install/uninstall those lists fast. For example, you start from 0, add 10 scenes you want to see, just the package, then you filter on installed, you will see only those ten, and in related dependencies you see all the packages they need. The green/orange ones can be installed all at once, the green are moved from Varbrowser directory to Vam directory, the orange will be copied from your other package locations in your system.

VaM itself is very complex stuff. If you are new to it it will take some time to learn. This tool tries to make it easier to organize and know better your package collection.

Also, what's the difference between the list of dependencies to the right of the package like and the one under it?
No difference. The list to the right showed only the selected package, but in v1.15 it was removed. There is only one list now. It is about to be released tomorrow.
 

qube21

New Member
Apr 13, 2025
12
1
Windows security detects, falsely or not, Trojan:Win32/Sabsik.FL.A!ml

Vambropy v1.15.01.7z
2 out of 63


vambropy.exe
5 out 71


Vambropy v1.15.01_src.7z
0 out of 59


For the compiled .exe there are always reports when the apps are unsigned. False positives.
You can try this yourself by compiling the source code into an executable. AV software will report it because it's something new and unsigned.
 

commondi32

Newbie
Jul 16, 2020
51
47
Windows security detects, falsely or not, Trojan:Win32/Sabsik.FL.A!ml
Windows itself is a trojan, spying on everything like most of today's technologies. I just turn it off.

There should be a sticky post for advice on 1) compiling from sources when in doubt, 2) avoid give admin privileges to any exe in here asking for it, and 3) use containers or virtualization to run the suspect apps sandboxed, to confirm they are not doin any harm.
 

commondi32

Newbie
Jul 16, 2020
51
47
[QUOTE="qube21, post: 17076685, member: 8914817"
Over 3X speedup, well done commondi32 !!
[/QUOTE]
Thanks, qube21! Without your help and feedback it would not had happened.
 

doggava

Newbie
Dec 16, 2021
50
14
Tool seems great, thank you!!

However,when trrying to add my big repo, I get this error to the ini file, the tool won't open:
1748680795466.png
 

commondi32

Newbie
Jul 16, 2020
51
47
OK, nvm, I now got it to start by putting my ini file like this:

View attachment 4893760
That is the most complicated config.ini setting, I guess. It was designed like that to allow, for example, to identify where the vars come from in AddonPackages, because it allows to create subdirs with a repo identifier. If you do not need that, you can set __VarTidied__ as you common_dir and use it as well in the other repos. Then all vars should go directly to AddonPackages (no subdir). There are other combinations, to more dynamically use/avoid files (by using same common dir but different subdir, from some repo in another subdir... unusual but useful in some situations. (like a sub g:\VAM VAR Repository\_oldfiles_).
(EDIT; With 'dynamically' I mean commenting/uncommenting from config.ini)
 

doggava

Newbie
Dec 16, 2021
50
14
Ok, misc.questions/feedback/usability ideas:

What is the fastest way to install multiple white vars to autoinstall.txt? Most reliable seems to be to do one by one. What about for green/orange ones, can I directly move them to autoinstall?

1748761622166.png

Asking, because going to Autoinstall option directly does not seem to work for me. Do I need to always press first I and then L and A - I also noticed sometimes these keys don't seem to work and/or status color doesn't update in UI.



1748761675934.png

What is actually Green? Is it Uninstalled, why not call it that? Can I install as symlinked directly?

This classification / complicated coloring does confuse me:
; color_installed=white
; color_missing=red
; color_available=green
; color_external=orange
; color_autoinst=blue
; color_unpacked=purple
; bgcolor_favorite=#D0D0F0
; bgcolor_default=black
; bgcolor_old=#EEB0B0

There are too many classifications using colors. Why do we need external? What is installed external? Why not just use a filter for these (Show external).

Can I easily select based on color all visible packages from list? Like all green. Or all autoinstalled and invert?

Can I hold control and select individual vars? Doesn't seem to work for me. Can I press ctrl+A in filter boxes to select all text there and cut? Now it selects all packages instead.

Sometimes it doesn't seem to add packages to Addonpackages or update autoinstall.txt at all. When I click 'Toggle Autoinstall' it says its updating the txt file at the bottom left, but it dopesn't seem to get updated at all after it is finished.

Sometimes it hangs showing 'Updating depencies status' - maybe impacting status message only? Maybe it's just buggy for me, idk.

Please provide a button key to uninstall reliably, pressing I does not uninstall reliably or update the coloring or filtering at all:
1748769578042.png
So it remains as a mystery to the user if the var is now correctly uninstalled after pressing the key or using right click menu. It is supposed the be the main use case for the tool, right?

How can I create a new list? Am I just dumb? :) Let's say I would want to see also thousands of Clothing packages I have (use only pure clothing tag) and add them quickly to my autoinstall.txt and then perhaps save the clothing list as a list to be toggled easily on or off. How would I go about doing that, what would be the fastest way to achieve that via current UI?

Could I use tags like "+clothing -scenes" to get easily the filtered view I am after?

For ideas, an other older var manager is choosing this kind of approach to split the var components to different columns:

1748769067031.png

Good tool, don't get me the wrong way. I hope you will add stuff to it and improve the UI, and it'll be a great one!
 
Last edited:

doggava

Newbie
Dec 16, 2021
50
14
Also, could you create a functionality that would uninstall all older version vars and give the option to link all missing older version vars to its latest version instead. This could be done by e.g. creating a symlink with the old version name, but linking to its latest version instead. So in essense you would, as a result, you would have in your Addonpackages folder many plugin symlinks with old version numbers pointing to only single latest var version.

This would be absolutely awesome! Do you think this would be doable?

You could have here an additional option like "Install as symlinked to latest version" for example?

1748767037891.png
 
Last edited:

commondi32

Newbie
Jul 16, 2020
51
47
Thanks for the feedback, doggava.

First, colors and classification are there to represent the Varbrowser's options. I suppose you already using it, so green packages are the ones available to Varbrowser (not to VaM) and can be installed to VaM, either by selecting them one by one in Varbrower (it moves deps and refresh VaM on each one which is increasingly slow the more packages you have installed) or with Vambropy just by pressing I (or menu option 'Install/uninstall') on each green one or a selection group. [ EDIT: Then, installing related dependencies, or by pressing P instead (or menu option 'Install+deps/uninstall'). ] Keyboard selection with Ctrl was forgotten, I will add it in next update, but mouse selection with Ctrl works already. As a drag function, it selects when the mouse moves, so if you are selecting a group just drag over it, and if you need to add individual green items keep pressing Ctrl and drag over the item. You can even scroll and add more this way, and when you finish press I or menu option "Install/Uninstall".

Autoinstall (light blue ones, configurable color) toggle works only for installed packages, so if you try on other item not installed it will not work. That may change (depending on feedback from more users). The reasoning behind this is that one wants to set autoinstall flag on specific, known installed packages, always needed, to prevent uninstalling them when "Uninstall All" button in Varbrowser/Vambropy is used.

So if you want to set to autoinstall a green package, the sequence is: first install it, and when it changes to white toggle it to Autoinstall. If you are trying to set to autoinstall a bunch of packages not installed maybe you need to check if you really need them before, and that implies installing them, most of the times anyway.

Coding for that kind of exceptions (prevent toggle autoinstall on not installed) implies adding more control process to a single item, slowing down performance in python, and that is why some things are not grayed out/disabled when the user is not supposed to use them. If it does not do any harm is ok for now, maybe in a future arelease... but there are other priorities.

External (orange ones, configurable color) probably appeared when you added your repo in config.ini.
The reason behind this is that external are out of Varbrowser/Vam scope. They are just handled by Vambropy, or by you manually copying from there. Moving from there is not supposed to do because a repo is supposed to be a backup, a set of original vars not to be tinkered with nor moved (which would risk of losing them if you use an app/plugin that deletes them), so the only thing Vambropy can do with External items is copying them to AddonPackages when you install them ('I' or menu option). And when an External item is installed, it can be uninstalled but it will turn green, not orange, because it is moved to Varbrowser's AllPackages dir. It keeps being a copy of the repo package. Same with symlinks: when an installed-as-symlink item is uninstalled, the symlink goes from AddonPackages/symlinked to AllPackges/symlinked, just like a normal file. Vambropy does not delete any file (other than dupes in AllPackages/AddonPackages when you start it, after 2 different kind of warnings.)

If you want to select all green, all external, etc. just filter with the related buttons. They are in there for that reason: External will filter orange ones, Installed will filter green ones, etc.
Sometimes it doesn't seem to add packages to Addonpackages or update autoinstall.txt at all. When I click 'Toggle Autoinstall' it says its updating the txt file at the bottom left, but it dopesn't seem to get updated at all after it is finished.

Sometimes it hangs showing 'Updating depencies status' - maybe impacting status message only? Maybe it's just buggy for me, idk.
That may be a bug in the status bar. Probably the process is already done but not informed to you in some unexpected case. Will check this out some more for the next update.

Filter boxes (filter entries) work as a multiword filter including the filter applied with the button filters. For example, selecting External button and typing "acid time" in Name will show all AcidBubbles.Timeline packages in your repo, and maybe other package including that two expressions typed. You can use multiple boxes, like "cloth" in Tags, "2025" in Cr Date to filter all clothing created on this year. If you cut a text from a box nothing will happen until you press Enter or set another filter box.

About custom lists, creating a new one is supposed to work with your multiple item selection, and if no multiple item selection is made it just adds all the packages being displayed. It used to work only with installed packages. I am checking it now and found bugs because not all selected/filtered packages are in the created list.
But the process to create a list is that, you select or filter, then push button create and give the list a name, then you can select it from the combobox. With a selected list, you can push related buttons to View, Install list and Uninstall list, and Delete list.
The Last two buttons are Varbrowser-specific, related to Autoinstall: the Autoinstall->List just creates a list called Autoinstall.txt with current Varbrowser's Autoinstall dictionary file, the List->Autoinstall will clear the current Varbrowser's Autoinstall dictionary file and turns the current list into a Varbrowser's Autoinstall dictionary file.

Could I use tags like "+clothing -scenes" to get easily the filtered view I am after?
I tried to do exactly that (just the minus sign) and it did not work so I removed it for this version, but I will keep trying to add that function because it is important to get that kind of results.

About the example you mentioned, remember that having always a big list of clothing will affect performance. The most performance-affecting kind of vars are clothing and morphs. Rest is ok, I tried including all assets with no impact on performance. It was harder to navigate through many assets though.

This would be absolutely awesome! Do you think this would be doable?
Faking versions... that is a cool idea but obviously under each user's responsability. Vambropy will not delete old versions but they would be set apart in a specific directory, then the last version symlinked to all those versions. It is doable, yes. It would pop up a big warning though! lol
...but it is interesting for helping to test scenes, and to get rid of old versions not really needed.

And about old versions, I always thought about a mantained collective list of updated versions that do not break scenes, so we can test and share our results, which would help us in safely determining versions to be gone for good. Maybe someone wants to start a thread on that one day, and I will gladly help.
 
Last edited:

commondi32

Newbie
Jul 16, 2020
51
47
Please provide a button key to uninstall reliably, pressing I does not uninstall reliably or update the coloring or filtering at all:
1748769578042.png
1748769578042.png

So it remains as a mystery to the user if the var is now correctly uninstalled after pressing the key or using right click menu. It is supposed the be the main use case for the tool, right?
I tried to replicate that, even with the same package, but it works for me. Make sure VaM (or any other app) is not holding that file. If not, maybe it is a bug after some other process, but in that case please give a detailed info on the steps to reach to it.
 

commondi32

Newbie
Jul 16, 2020
51
47
One more thing on the classification naming, because it changed several times already and I have not much feedback on that.

"Available" is probably confusing new users who do not use Varbrowser, or even Varbrowser users because Varbrowser ony uses Install/Uninstall terms. So I could rename "Available" to "Uninstalled".

"External" means outside of VaM/Varbroser's scope, so I think it is ok.
"All local" means not "External"

"VB ..." are subclassifications, with a background color, not main color change, so it is ok. And colors can be user-configured to user's choice.

So, in the proposed filter options we would have "All, All local, Uninstalled, Installed, External, VB Autoinstall, VB Favorites, Unpacked, Missing".

If that is alright to the people then it will changed on a next update. :)
 

kentaro1

Engaged Member
Apr 21, 2020
2,067
18
When I load external, the installed files and available files are reduced as shown in the attached picture. Version 1.09 works fine.
 
Last edited: