RFC: a minimal plugin architecture

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

I am starting to get the idea that everyone feels I am being a little
too ambitious. Slow learner, I know.

I think this is because my visions are much grander than people are
willing to swallow right now, so I want to scale back to where I think
there is some consensus and get some feedback about what a minimal
plugin architecture would be.

I understand that I am yet to convince people of the merits of either
git -mediated plugin management or package management, so let's assume
that the contents of a "git-plugins" directory is managed only by
package managers or plugin authors, following guidelines established
by git-core.

I observed that Pau, Junio and Jonathan are receptive to the idea of a
"standard" directory into which plugins could be installed. Pau would
prefer one directory per package, and with that I would concur.

However, let's start simple, what would a minimal plugin directory
look like and, assuming there was one per git-install, where would it
be located relative to the prefix?

Here's a suggestion for the layout:

bin/
   - all scripts and sh libraries
man/
   - all man pages
html/
   - all html pages

What about location?

   ${prefix}/git-plugins
   ${prefix}/lib/git-plugins

Or, decided by distribution?

Is there support for the idea of adding a --man-path switch to the main line?

What about a --plugins-path, that would answer the question about
where plugins should go?

Per Jonathan's and Junio's suggestions, the idea of having a plugins
search path seems like a reasonable one, so that users without control
over the git install can at least customize it themselves.

How would this path be configured by the user? Would the user
configuration edit the git default or would it override it?

If there are multiple plugin directories, how would a plugin discover
which one it has been installed in so that it can find any
plugin-specific resource it might need?

Regards,

jon.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]