Kirby Plugin Installer


#1

Many other CMSes have a plugin installer directly into the admin panel. I think it’s nice. Therefor I’ve created a very very early plugin widget.

  1. Paste a url to a github repo containing a plugin.
  2. Click “Install”.
  3. Magic!

Should I continue the development of Kirby Plugin Installer?

  • Yes, I need this
  • No, I don’t need this
  • I’m not sure

0 voters


Where is the best place to store plugin cache data?
#2

I admire your productivity @jenstornell but are there many kirby plugins that are “plug and play”? Most of them seem to need additional setup (config.php or editing blueprints etc).

Seems to me that this makes sense in wordpress world but not so much in kirby.


#3

I think @krisa is right. But I also think the better way should be to make the plugins plug&play. That would even make updates easier. Currently I have to update a plugin and copy around files every time for some plugins. (I am working on that issue, on my podcast-plugin, too.)


#4

Updating might actualy be how this could be useful. But then you might get to the same hell as wordpress. Your client updates plugin on live site that breaks it :)).

Maybe this should be used as “gui” for kirby-cli? For development?


#5

Most of them seem to need additional setup (config.php or editing blueprints etc).

Yes they do, but I see that as a different thing. First you install it, maybe with this widget. Then as a second step you need to implement it to your site.

But then you might get to the same hell as wordpress. Your client updates plugin on live site that breaks it

This widget should not be for clients. I’ve never used roles but maybe it’s possible to only make this widget available for super admins?

Updating might actualy be how this could be useful.

Yes, I thought it could save the url to the repo somehere. Then the list with plugins could have an update button. Then it would take 1 sec or so to update a plugin to the latest version.


#6

It sure is. Instead of hardcoding a role, you could use a custom permission for this.


#7

Yes, that’s probably the perfect way to go in this case. The votes does not look that good so maybe it will not end up as a plugin after all. We will see. :slight_smile:


#8

Version 0.1 released!

github.com/jenstornell/kirby-plugin-installer

I’ve been looking at the votes and most of you did not like this feature at all. I still wanted it myself, because I think it will help me keeping my plugins up to date.

Features

  • Install, update, delete and deactivate plugins.
  • Everything is done with the widget.
  • Visit plugin Github repository link.
  • It will warn if the file does not match the folder, or the plugin type is wrong.
  • Possible to restrict permission to only super admin users.

Requirements

Inspired by @1n3JgKl9pQ6cUMrW - Kirby - Plugins Widget


#9

Don’t forget to include a warning that deleting/deactivating certain types of plugins might break the Panel and/or your site, because suddenly fields or classes or whatever are missing.

Honestly, I think that such a plugin gives you the false impression that you can simply remove stuff without any implications. Or does it warn you when you try to remove stuff?


#10

In the readme or in the plugin? Maybe both.

I have an idea to put a warning in the widget before running a delete, update and deactivate action. That would prevent accidental clicks as well.


#11

Both!

Yes, I think that’s important.


(And don’t blame Kirby when you suddenly end up with a bloated WP clone site with thousands of plugins that you can’t control anymore :stuck_out_tongue_winking_eye:, just saying)


#12

It seems like you are not one of the yes-voters. :wink: But you don’t even use the Panel, do you?

I think that such a plugin gives you the false impression that you can simply remove stuff without any implications.

Except for the warnings, it’s also possible to only allow some special users to have access to the widget. Hopefully these super admin users know what they are doing when they are deleting plugins. I don’t think the resposibility should fall back on the installer plugin. People need to be responsible for their own actions as well. :slight_smile:

suddenly end up with a bloated WP clone site with thousands of plugins that you can’t control anymore

What does this even mean? There are not even 1000 Kirby plugins in total yet, only about 300. I have 4 of the installed in the demo gif. WordPress is not the only CMS with a plugin installer. Grav has that as well and I don’t think it’s anything wrong with that. It’s only a different way to install the plugins. If I would have liked WordPress more, I would not have been here.


#13

Hey Jens, I was just kidding, no offense meant :peace: :pray:

I admit to that.

I do. For testing :wink:

Absolutely!


#14

Well User permissions wont help here. Most of the clients still want to have admin account somewhere on the side and it happens all the time. Lot of smarter ones (those who know about dangers of getting wp site hacked) specificaly check if their site is updated so you can get to constant neverending circle of keeping sites updated.

But i think the problem is philosophical - i dont believe updating of dependencies belong to panel. But thats my opinion and well unless something like that was to appear in core… you just wanted opinions :slight_smile:


#15

Well User permissions wont help here.

To some extend I still believe it will.

The plugin doesn’t use the new permission feature, at least not roles. It just checks if a user is allowed to use the widget by an option. That way it’s independent.

This plugin is clearly not for “dummies” and that’s why I’ve added a warning in the readme:

WARNING: By using actions to change your plugins, you risk to break your site or the Panel. To restrict the widget to a username, see options.

c::set('plugin.installer.username', 'jenstornell');

or

c::set('plugin.installer.username', ['jenstornell', 'krisa']);

i dont believe updating of dependencies belong to panel

And many in this forum agree with you (over 50%). That will not stop me this time. I want to try it out. :slight_smile:


#16

I was curious what this actually did so I tried to install it. The widget did appear but was telling me “page not found”.

But I agree with the general concern about “releasing” this.

Given the person installing the plugin would need to provide the repository information and most plugins usually requiring some element of work to be done on the source files anyway, I struggle to see the how this provides any value for the person installing it. Yet I can see how this could be the source of major problems if anyone did use it without knowing exactly what they were doing.

You are obviously someone that does know what they are doing :sunglasses:

But is it wise to call it a “release” and listing it on a plugins list (however unofficial) when you are playing the idea “to try it out”?

Maybe describing them as alpha and in development would be more accurate.

There is so that could go wrong for someone who installs it. Especially with the type person searching for a “plugin installer” solution may not know Kirby at the level you are assuming they are.

I speak from experience, as I was building my first Kirby site was around the time you were releasing Revisions 2.5 to an appreciative community.

After installing I discovered the way it stored revisions in folders was not compatible with some of the core Kirby concepts. We spoke about it in an issue and you acknowledged it was a system wide problem and not a small managable tweak you could require the user to make.

I don’t mean to dismiss all the excellent work you do for the community, it really is appreciated. I respect the way open source works, and never expect or demand anything from those that contribute to it.

But I was surprised how such a major issue hadn’t been spotted before as it makes the plugin unusable unless the person installing is prepared to make significant changes to Kirby’s core files (please correct me if I am wrong).

I had a couple of other experiences with plugins (from other developers). They started off in a blaze of glory with frequent updates and fixes galore, then end up stagnant and broken.

Now whilst I love Kirby Core, I am ultra cautious in my approach to its plugins, in a way I am not when it comes to WordPress. I don’t use many plugins on WordPress but the handful I use, I know I can rely on.

:sleeping:

Ooops, this was a bit longer than I anticipated. I want to reiterate that I don’t mean any offence and I appreciate all the effort that goes into the software and the community.

Thanks :cake:


Kirby Revisions 2 - Poll about what to do with it
#17

The widget did appear but was telling me “page not found”.

Well, that’s not good. Hard to say why without more information.

this could be the source of major problems if anyone did use it without knowing exactly what they were doing.

That’s why I added this as the first sentence of the repo:

WARNING: By using actions to change your plugins, you risk to break your site or the Panel. To restrict the widget to a username, see options.

Revisions 2.5
I was surprised how such a major issue hadn’t been spotted before as it makes the plugin unusable unless the person installing is prepared to make significant changes to Kirby’s core files.

I agree with you and because I see no quick fix to the problem I’ve stopped developing this plugin until I figure it out, or something will change in the core.

You was surpriced about your findings? So was I when you told me. No one else seems to have seen all the problems with it and it’s still my most popular plugin so far. It even got noticed in https://getkirby.com/blog/kosmos-3 as “Very powerful but simple!”.

I don’t mean any offence

It felt a bit offence actually, but I already got so much offence on this plugin anyway that one more would not make a big difference.

Anyway, this will probably not be my most loved plugin and if you don’t like the idea of it, don’t install it. :slight_smile:


#18

I think that’s more to cover your :peach: than to inform the user that if they were looking for an easy way to install plugins, then this really is not it :slight_smile:

True, but the people looking for a solution like this are doing so because they have trouble installing plugins.

They read “Install, update, delete and deactivate plugins, Everything is done with the widget.” and think that this is the all in one solution they have been looking for.

Which is what I really don’t understand.

How can something be so popular when using it affects all queries used in templates and snippets, fundamental of the CMS it is meant to work with? I agree on paper it looks great, but I do question if people (inc Kosmos) were praising the idea without actually installing it.


#19

I think that’s more to cover your :peach:

My intension was not to cover my :peach: (which you can read in the posts above). I have a disclaimer for that.

About Kirby Revisions, it’s another topic and I really don’t have any answers to your questions about it.


#20

And right you are! Of course, this is true for any plugin of any system. Since development of Kirby plugins is relatively new, it’s hard to tell which ones will make it into a bright future. Since WP has been around a lot longer, so plugins had more time to ripen and maybe you have more experience with them. There are a couple of Kirby plugins that have been around for quite a while and which are under active development, so that I personally think I can use them in my projects. Time will tell.

I think I keep repeating myself when I say that, but I think it is important: everyone should really check for themselves if a plugin is actively developed, how long it has been around, try to evaluate the code quality, of course test it thoroughly before using it in production etc. etc. The more plugins you install, the higher the risk that your site will stop working after the next Kirby update.

With a couple hundred plugins in the plugins repo, we as the Kirby team can’t possibly test all these plugins. And when we mention a plugin, this is not meant as a rating or recommendation to use them, but to recognize the effort and the ideas of the developers.

And after all, even a plugin that is not perfect (or even a deprecated one), may serve as a basis for others to build their own stuff on. (And a plugin like the Revisions plugin might even work for some people depending on their setup or requirements. Personally, I’m looking forward to the next version of AutoGit with Git-based revisions that don’t clutter the content folder.)