Windows standalone installer should create plugins directory
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Bazaar |
Fix Released
|
Low
|
Alexander Belchenko |
Bug Description
It's more of a feature request, really.
I recently wanted to install a plugin for all the users on my Windows XP box, but I couldn't figure out where it should go.
The plugins document that ships with bzr says "typically found in /usr/lib/
Asking on IRC gave me the following answer:
"put it somewhere else and set the BZR_PLUGIN_PATH env variable", which worked out great, but I think it would be nice if the Windows standalone installer, while it was installing Bazaar, created a Plugins directory in my Bazaar installation directory, and set the environment variable for me.
Details:
Bzr 0.18 installed in C:\Program Files\Bazaar\ using the Windows standalone installer.
Using bzrlib: C:\Program Files\Bazaar\
Using Bazaar configuration: C:/Documents and Settings/
Changed in bzr: | |
milestone: | 0.92 → 1.0rc1 |
status: | In Progress → Triaged |
Changed in bzr: | |
status: | Triaged → In Progress |
Changed in bzr: | |
status: | In Progress → Fix Committed |
Changed in bzr: | |
status: | Fix Committed → Fix Released |
>Asking on IRC gave me the following answer:
>"put it somewhere else and set the BZR_PLUGIN_PATH env variable", which worked out great, but I think it would be nice if the Windows standalone installer, while it was installing Bazaar, created a Plugins directory in my Bazaar installation directory, and set the environment variable for me.
No, it should not do this.
Windows policy states that applications should not store any settings or configurations files (or any auto-generated files) in Program Files directory. This is our case: each plugin is python sources, and during import Python interpreter will create and save compiled bytecode (*.pyc) files.
Mozilla Firefox and Thunderbird is very good examples of windows applications: their store extensions (== plugins) in
C:\Documents and Settings\ %USERNAME% \Application Data\Mozilla\ Firefox\ Profiles\ xxxxx\extension s\ %USERNAME% \Application Data\Thunderbir d\Profiles\ xxxxx\extension s\
C:\Documents and Settings\
Another bad side effect of placing plugins in C:\Program Files\Bazaar\ Plugins subdirectory is the fact that uninstaller know nothing about installed plugins and don't know is plugins should be uninstalled or not.
Only one right solution for me (already mentioned in the past, IIRC) is to allow Bazaar looking for plugins in 2.0\plugins directory in addition to %USERNAME% \Application Data\bazaar\ 2.0\plugins.
C:\Documents and Settings\All Users\Application Data\bazaar\
C:\Documents and Settings\
I think this problem could be solved also with some nice GUI tool that allows users explore list of plugins on Bazaar website, download them and install automatically in right location. I started bzr-config application, but plugins support is not implemented yet.
BTW, Mercurial use another approach: their install standalone hg.exe not in C:\Program Files\, but in C:\mercurial instead, and expect plugins in a subdirectory of C:\mercurial.
But actually both approaches have theirs cons and pros.