roundcube/plugin-installer

Roundcube 插件和皮肤的 composer 安装器。

安装次数: 190,276

依赖者: 145

建议者: 0

安全性: 0

星级: 26

关注者: 12

分支: 15

开放问题: 6

类型:composer-plugin

0.3.8 2024-08-21 09:25 UTC

This package is auto-updated.

Last update: 2024-09-21 09:42:11 UTC


README

此安装器确保插件和皮肤被放置在正确的目录中

  • 插件 - <roundcube-root>/plugins/plugin-name
  • 皮肤 - <roundcube-root>/skins/skin-name

最小配置

  • 在您的插件仓库中创建一个 composer.json 文件
  • 添加以下内容

插件 sample composer.json

{
    "name": "<your-vendor-name>/<plugin-name>",
    "type": "roundcube-plugin",
    "license": "GPL-3.0-or-later",
    "require": {
        "roundcube/plugin-installer": ">=0.3.0"
    }
}

皮肤 sample composer.json

{
    "name": "<your-vendor-name>/<skin-name>",
    "type": "roundcube-skin",
    "license": "GPL-3.0-or-later",
    "require": {
        "roundcube/plugin-installer": ">=0.3.0"
    }
}

Roundcube 特定 composer.json 参数

对于插件和皮肤,您可以选择性地将以下部分添加到您的 composer.json 文件中。所有属性都是可选的,以下提供示例值。persistent-files 定义了一个应该跨更新维护的文件列表。默认情况下,只维护 config.inc.php。数组应包含相对于您插件根目录的路径。

"extra": {
    "roundcube": {
        "min-version": "1.4.0",
        "sql-dir": "./SQL",
        "post-install-script": "./bin/install.sh",
        "post-update-script": "./bin/update.sh",
        "persistent-files": ["config.inc.php", "skins/elastic/_custom.less"]
    }
}

配置

此安装器将在安装每个插件或皮肤时询问您是否想要启用它。要始终启用所有插件或皮肤,请将 enable-plugin/enable-skin 添加到 Roundcube 目录根目录中的 composer.json 中的 config 部分。当卸载包时,Composer 不会删除文件夹。要删除文件夹,请在您的配置中设置 uninstall-remove-folder

"config": {
    "roundcube": {
        "enable-plugin": true,
        "enable-skin": true,
        "uninstall-remove-folder": true
    }
}

仓库

将您的插件或皮肤提交到 Packagist

安装

  • 克隆 Roundcube
  • cp composer.json-dist composer.json
  • 在 composer.json 的 require 部分添加您的插件
  • composer.phar install

请参阅 plugins.roundcube.net 上的完整故事。