Quando poderei instalar plugins diretamente no painel de administração?

O Discourse oficial tem planos de adicionar a instalação de plugins diretamente no painel de administração na próxima versão? Assim como a instalação de temas!

Receio que isso não possa ser feito pela interface do usuário (UI), apenas pela linha de comando.

Veja este guia:

E até onde sei, não há planos para adicionar este recurso na próxima versão (ou nunca?). Se bem me lembro, os plugins podem precisar interagir com o banco de dados e outras coisas em Ruby, razão pela qual isso não pode ser feito pela UI.

Infelizmente, não parece provável.

Havia um Customization > Plugin que, em um certo momento, funcionava razoavelmente bem, chamado Procourse Installer. Mas o autor o abandonou e ele está quebrado há anos. Se não me engano, funcionava nas primeiras versões do Discourse v2.x.

Mas, na verdade, não é tão difícil instalar via servidor.

Ainda não estudei muito o assunto, mas existe um projeto, se não me engano chamado Cockpit(?), que permite executar uma interface web para instalações via Docker.

Definitivamente valeria a pena! Consigo imaginar muitos casos de uso em que o « administrador da comunidade » não é necessariamente o administrador do sistema.

Relacionadamente (isso é até uma palavra?), acredito que o painel Literate Computing do @pfaffman tenha um recurso para permitir a instalação de plugins.

Veja também Rebuild the forum using code? para algo bem semelhante.

O painel de controle da Communiteq oferece algo semelhante em nosso plano Professional e superior :slight_smile:

image

Coisas como o painel de controle do @RGJ são melhores do que ter algo assim incorporado diretamente. Como modificações do lado do servidor, como plugins, podem fornecer um risco de segurança muito maior. Caso uma conta de administrador seja comprometida.

Um usuário mal-intencionado poderia instalar um plugin personalizado que poderia causar muitos problemas. Portanto, tê-lo como um painel de controle via ssh ou externo é uma ideia muito melhor, com um nome de conta e login separados.