我也这么想过。也许所有热衷于 discourse 插件开发的人都应该聚在一起,建立一个没有费用的加密货币市场。我们只需要一种方法来提供对 GitHub 存储库的私有访问。我们可以托管一个 Gitea 实例,并在存储库前面构建一个“加密货币门”。
1 个赞
michaeld
(Michael - Communiteq)
2022 年1 月 26 日 07:33
3
你可以“卖”给人们一个私有 Github 仓库的部署密钥吗?
我的建议:在你的商业模式被证明有效之前,不要过度设计你的解决方案。阅读 Email-First Startups
3 个赞
pfaffman
(Jay Pfaffman)
2022 年1 月 26 日 11:25
4
这里最常用的模型是定制的付费插件和主题,以及开源插件,这些插件能为开发人员带来信誉(和技能发展)。有时,为特定客户开发的插件将被发布为开源。
寻求帮助的人可以在 Marketplace 发帖。虽然很少这样做,但你也可以在 Marketplace 提供服务。
2 个赞
授予和撤销访问权限以及管理付款的麻烦太多了,这意味着你需要收取高价,并且无法大量销售/向更广泛的受众销售。
说得非常好。
2 个赞
大家好。
我的 Discourse 市场概念:
我想到了一个简单的解决方案,可以帮助解决这个问题:我们可以要求将插件作为带密码的 zip 文件发送。服务器只需解压缩文件并将插件安装到 Discourse 中。密码可以是安装者创建的加密密钥。
这样,只有使用密钥才能解压缩。密钥仅在付款后解压缩文件。现在,这种情况适用于付费插件或开源插件,具体取决于开发人员。
如果问题在于可视化源代码,一种方法是使用混淆器。当代码发送到存储库时,它会经过混淆过程,代码会被包装起来,并且只能使用特定的开发人员密钥查看。
我所描述的解决方案类似于 Ubuntu 上的 flatpack,它是一个您下载并在 Ubuntu 上安装的包,不一定需要通过命令行安装,flatpack 就像一个可执行文件,您只需单击下一步、下一步,就像 Windows 一样。
要映射存储库,我们可以使用 Github API - 这仅适用于托管在 Github 上且公开的插件。Github 有一个 API,您可以通过标签搜索存储库。
另一种方法是使用网络爬虫来映射可能的付费存储库。我只是不知道网络爬虫是否符合 Discourse 的隐私和安全条款许可。就像评论一样,我能够阅读所有评论,如果您发布到标签 #marketplace,通常是 Discourse 上的付费插件,您可以向全世界展示。
简而言之,我认为开发人员理论上可以将这些存储库的链接直接发布到他们托管 zip 文件的网站上。然后,网络爬虫通过 marketplace 标签获取链接,并将插件显示在付费类别中。如果您想安装付费插件,一种方法是付费,然后 zip 文件就会被释放,在释放后,使用付款后生成的激活密钥解压缩 zip 文件。
为了使此解决方案更加优雅,我们可以做一些类似 .discoursepack 的事情。
.discoursepack 扩展名是自定义 zip 格式的扩展名,它是用于在 Discourse 中安装插件的格式。
概念摘要 - 最小可行产品
源代码 → 源代码混淆 + 加密密钥 → 生成文件 discoursepack → | 解压文件 discoursepack ← 使用加密密钥
服务器会存储 discoursepack 文件一段时间
要在 Discourse 中安装付费插件,需要使用付款时收到的密码解压缩 discoursepack 文件。
没有加密密钥就无法创建 discoursepack 文件。同样,也无法打开或读取此类型的 discoursepack 文件。
付费插件可以托管在 Discourse 的服务器上,也可以托管在插件制造商的服务器上。
开放插件可以托管在 Github 上。
如果开源插件未托管在 Github 上且不公开,一个可行的解决方案是要求提供 discoursepack 文件所在链接。
如果是付费插件,这些插件不托管在 Discourse 上 - 在这种情况下,由于它们托管在制造商的网站上,因此制造商需要通过只有他知道且对所有付款方式都是临时的密钥提供指向该文件的直接链接。
如果您有大量插件要上传到 Discourse,建议使用 cms cockpit,它轻量级且不应占用太多资源。
插件开源 config.yml
server:
host: 127.0.0.1
port: 8006
debug: true
analytics:
enabled: true
tag: xx-xxxxx-xxx
plugin:
title: authmatic-example
type: public, paid # 或 public, nopaid
description: authmatic-example 来自一个做事的开发者。由 authmatic-example 公司提供支持。
url: https://github.com/authmatic-example/releases/v1/authmatic-example.discoursepack
releases: v1
author:
name: authmatic-example
github: authmatic-example
twitter: authmatic-example
site: authmatic-example.com
avatar: /assets/avatar.jpg
keystore:
enabled: true
client_id: xxxxxxxxxxxxxxxxxxxxxxxxx
client_secret: xxxxxxxxxxxxxxxxxxxxxxxxx
repo: authmatic-example
owner: authmatic-example
admins: [authmatic-example]
log: true
format: text
level: info
line: true
插件闭源 config.yml
server:
host: 127.0.0.1
port: 8006
debug: true
analytics:
enabled: true
tag: xx-xxxxx-xxx
plugin:
title: authmatic-example
type: private, paid
description: authmatic-example 来自一个做事的开发者。由 authmatic-example 公司提供支持。
url: client_url_temp
releases: v1
author:
name: authmatic-example
github: authmatic-example
twitter: authmatic-example
site: authmatic-example.com
avatar: /assets/avatar.jpg
keystore:
enabled: true
client_id: xxxxxxxxxxxxxxxxxxxxxxxxx
client_secret: xxxxxxxxxxxxxxxxxxxxxxxxx
client_url_temp: xxxxxxxxxxxxxxxxxxxxxxxxx
repo: authmatic-example
owner: authmatic-example
admins: [authmatic-example]
log: true
format: text
level: info
line: true
MVP - 最小价值产品
可接受的文件大小限制
100mb 或 900mb 的 discoursepack 文件。
参考
michaeld
(Michael - Communiteq)
2022 年1 月 27 日 10:12
7
我觉得你试图解决一个不存在的问题,并且在“丢弃婴儿的同时也丢弃了洗澡水”。
你的解决方案不允许轻松更新,难以/不可能在自动化部署中使用,并且容易规避。
部署密钥和 Git 存储库就足够了,并且没有上述缺点。
再说一遍,我的建议是:首先验证你的商业模式,然后关注价值。先做一个每个人都想购买的插件,然后再解决如何销售它的问题。
4 个赞
pfaffman
(Jay Pfaffman)
2022 年1 月 27 日 17:23
8
说没有人会愿意为插件付费,或者说没有人能安装加密 zip 格式的插件,这只是轻微的夸大其词。
我有一个平台,可以利用部署密钥在它管理的网站上安装插件。
另一个解决方案是公开插件,但让它在后台检查某个许可证是否有效。这很容易被编辑代码的人绕过,但我认为很多 WordPress 插件都是这样工作的。
1 个赞
你说得有道理,抱歉。你的反馈非常有价值,我之前没想到。
1 个赞
system
(system)
关闭
2022 年2 月 26 日 18:49
10
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.