This is not a valid plugin

I have version 2.1.2 up and running. I had version 2.0 but my Dropbox plugin was listed as not being valid, and the uninstall button is gone. I thought the upgrade might fix it, but it did not. I also tried to upgrade the plugin from version 0.7.1 to 0.7.2. It still lists the old version and says it is not compatible. I also tried to load the PDFText plugin and it is not visible. What am I doing wrong?

What's the name of the folder for the Dropbox plugin in your plugins folder?

You usually get these kinds of problems when the names of folders aren't correct, or if you've accidentally introduced another empty directory layer. The folder should just be named "Dropbox" and it should contain "DropboxPlugin.php" among other files and folders directly under the "Dropbox" folder.

Here is the working directory:
/var/www/html/plugins/Dropbox

Here are the contents of the Dropbox folder:
drwxr-xr-x. 2 root root 4096 Oct 9 12:48 controllers
-rw-r--r--. 1 root root 3229 Oct 9 12:48 DropboxPlugin.php
drwxr-xr-x. 2 root root 4096 Oct 1 12:00 files
drwxr-xr-x. 2 root root 4096 Oct 9 12:48 helpers
drwxr-xr-x. 2 root root 4096 Oct 9 12:48 languages
drwxr-xr-x. 3 root root 4096 Oct 1 12:00 models
-rw-r--r--. 1 root root 384 Oct 9 12:48 plugin.ini
drwxr-xr-x. 3 root root 4096 Oct 1 12:00 views

Please advise. I am new to this stuff so I am still learning. Thanks for your help.

Best Regards,
Mike Wilson

Do you have any other folders under plugins/ that could be your previous, non-working Dropbox install? The one you've shown looks fine, and wouldn't or shouldn't be generating a complaint about "not a valid plugin."

Here are the contents of my plugin folder. Also, PdfText does not show up as a plugin.

Thanks,

Mike Wilson

[root@localhost plugins]# ls -l
total 20
drwxr-xr-x. 3 root root 4096 Oct 10 11:05 Coins
drwxr-xr-x. 8 root root 4096 Oct 9 12:48 Dropbox
drwxr-xr-x. 8 root root 4096 Oct 10 11:05 ExhibitBuilder
drwxrwxr-x. 5 root root 4096 Jun 6 09:59 PdfText
drwxr-xr-x. 8 root root 4096 Oct 10 11:05 SimplePages

I wonder if this is just a permissions or SELinux issue.

I see that there's a dot at the end of all the permissions for the files you posted, indicating there are extended attributes set, and the root user owns everything there. Omeka may simply not be able to read the files properly.

I'm not well-versed on SELinux, but I believe you can see what those extra attributes are with a command like this (from the plugins directory or a specific plugin folder):

getfattr -R -d -m - .

Here is part of what the above command returned.
Thanks,
Mike Wilson

# file: PdfText/PdfTextPlugin.php
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/plugin.ini
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/views
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/views/admin
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/views/admin/plugins
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/views/admin/plugins/pdf-text-config-form.php
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/languages
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/languages/uk.po
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/languages/fi_FI.mo
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/languages/sv_SE.po
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/languages/de_DE.mo
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/languages/zh_CN.mo
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/languages/fr.po
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/languages/cs.po
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/languages/cs.mo
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/languages/es.mo
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/languages/de_DE.po
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/languages/sv_SE.mo
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/languages/fr.mo
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/languages/ca_ES.mo
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/languages/nl_BE.po
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/languages/fi_FI.po
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/languages/zh_CN.po
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/languages/template.base.pot
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/languages/pt_BR.mo
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/languages/template.pot
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/languages/ca_ES.po
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/languages/nl_BE.mo
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/languages/es.po
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/languages/pt_BR.po
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/languages/uk.mo
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/models
security.selinux="unconfined_u:object_r:user_home_t:s0"

# file: PdfText/models/PdfTextProcess.php
security.selinux="unconfined_u:object_r:user_home_t:s0"

I think the user_home_t part of that output is a problem here. That's the SELinux "type" for files in a user's home directory, and Apache may not be able to read them.

Do plugins that work correctly, or Omeka's other files, have a different output from that command?

Oh, and since we know now that it's SELinux contexts that are represented by that dot, you should be able to use an easier command to see the same information, just a flag for ls:

ls -Z

It was a permission issue. Thank you very much for the help. I had unzipped the files in the user's home directory and then moved them to the plugin folder. I deleted the non-working plugins in the plugin directory and moved the zip files there. After unzipping them in the plugin directory, everything started working fine. Thanks again.
Best Regards,

Mike Wilson