[Sneak Peek] Hubitat Package Manager

One thing that I noticed that has come up dups of drivers and Apps.



There will be a more formal release, right now I just wanted to see if others would even be interested in using it. If it were just for my apps it wouldn't be all that valuable...

5 Likes

Thanks @dman2306

Am I correct that you already had these installed? If so you needed to use the Match Up feature, not install them again. As I mentioned, this isn't even an alpha release yet, just kind of a preview to get feedback. Documentation is definitely incomplete.

OK No problem Let me try that again

Since you installed the duplicates already, you'll first need to do an uninstall.

Very good. I will try that. Thank you again.

I made a change so in the future, the first time you run the app it will force you to go through a Match Up to prevent others from not realizing they'd create duplicates.

Deleting apps and driver made the hub unstable. Rebooted Hub Cleaned up some more. Rebooted again. Installed without issue and was able to configure the application. The Match update just wouldn't work for the Bond but did work with weather DOT Gov application.

Was there anything in the logs?

I was getting many errors
app:6552020-04-09 02:54:56.384 pm errorjava.sql.SQLException: An SQLException was provoked by the following failure: com.mchange.v2.resourcepool.ResourcePoolException: A ResourcePool cannot acquire a new resource -- the factory or source appears to be down. on line 271 (prefInstall)

app:6552020-04-09 02:50:10.294 pm errorjava.sql.SQLException: Connections could not be acquired from the underlying database! on line 1771 (performInstallation)

app:6552020-04-09 02:50:10.211 pm infoFatal error occurred, rolling back

app:6552020-04-09 02:50:10.169 pm errorError installing driver: groovyx.net.http.HttpResponseException: Server Error
app:6552020-04-09 03:04:04.071 pm errorjava.sql.SQLException: An SQLException was provoked by the following failure: com.mchange.v2.resourcepool.ResourcePoolException: A ResourcePool cannot acquire a new resource -- the factory or source appears to be down. on line 1768 (performInstallation)

app:6552020-04-09 03:04:04.074 pm errorjava.sql.SQLException: An SQLException was provoked by the following failure: com.mchange.v2.resourcepool.ResourcePoolException: A ResourcePool cannot acquire a new resource -- the factory or source appears to be down. on line 99 (prefOptions)
app:6552020-04-09 03:27:12.124 pm errorjava.sql.SQLException: Connections could not be acquired from the underlying database! on line 1775 (prefInstall)

app:6552020-04-09 03:25:05.067 pm errorjava.sql.SQLException: An SQLException was provoked by the following failure: com.mchange.v2.resourcepool.ResourcePoolException: A ResourcePool cannot acquire a new resource -- the factory or source appears to be down. on line 263 (prefInstall)

app:6552020-04-09 03:20:17.740 pm errorjava.sql.SQLException: An SQLException was provoked by the following failure: com.mchange.v2.resourcepool.ResourcePoolException: A ResourcePool cannot acquire a new resource -- the factory or source appears to be down. on line 1771 (performInstallation)

app:6552020-04-09 03:20:17.685 pm infoFatal error occurred, rolling back

app:6552020-04-09 03:20:17.599 pm errorError installing driver: groovyx.net.http.HttpResponseException: Server Error

I discovered a bug where if you had used the app to install parent/child apps the child apps wouldn't work. When you'd click them in the parent app you'd get a 404 error page. The easiest fix is just update the child app code in the code editor and click save. I fixed this in the newest code so it won't happen again. Also fixed is that it would tell you it uninstalled an in use app/driver even though it didn't. It will now tell you it's in use and can't be deleted.

For developers, I wanted to make it easier to build manifests and repositories. I built a little command line tool (works on Windows, MacOS, and Linux, as long as .NET Core is installed). You can get it at Release hpm-1.0.0 · dcmeglio/hubitat-packagemanagertools · GitHub

Just run hpm --help for help. Hopefully I made the help self-explanatory! I just used it to create some manifests for my apps and it seemed to work fine.

This is a tough nut to crack. The sociological aspects (i.e. attracting a critical mass of developers to adopt the system in their projects) are at least as challenging as the technical ones, but well worth the effort, and critically important to allowing non-technical users to unleash the full potential of Hubitat. Keep up the good work.

1 Like

Just tried to run this on a win10 machine. Got a fatal error. "The required library hostfxr.dll could not be found".

Thanks

Well that's interesting, I guess it's not installed on Win10 by default yet! I'm in the process of writing up some instructions, but you can download .NET Core from Install .NET on Windows - .NET | Microsoft Learn

2 Likes

If the help isn't clear enough, I put some samples on hubitat-packagemanager/README.md at master · dcmeglio/hubitat-packagemanager · GitHub

1 Like

I created manifests for my Ecobee Suite, MeteoBridge Weather Station and PurpleAir Air Quality Station, and submitted the pull request for my repository.

It's not too difficult, but it would have been nicer if you could have used the existing installManifest.json that the SmartThings installer uses...

5 Likes

Great news, my Ecobee Suite updated to the latest version using it! Much easier than updating 12 apps! I thought about using the ST manifest... my fear was people would try to install ST apps and cause problems. You're one of the rare developers who has managed to make his app work using the same code. Maybe I'll make a convert option so people who already have an ST manifest can start from converting that?

5 Likes

Keep up the awesome work guys. This is very promising for non technical noob like me. :+1:

2 Likes