Hello, This is a port of Headwind MDM.
Headwind MDM is a Mobile Device Management platform for Android devices, designed for corporate app developers and IT managers. https://h-mdm.com Features for open source version - Enrollment to Android 7+ devices through scanning a QR-code - Work in "Application mode" without enrollment - Customize the mobile desktop design and available applications - Automatic deployment of applications through the web panel - Mobile device management: groups, configurations, device status - Setup the available mobile device capabilities (GPS, Wi-Fi, Bluetooth etc.) - Manage the automatic OS update mode on the mobile device - Extensible platform design allowing the custom plugin development - Collection of application logs in the web panel - Centralized configuration of corporate applications This is a fully self-hostable mobile device management solution for Android devices that does not require any accounts. I was looking for a solution to automatically provision several Android devices in my family and discovered this. It's written in Java and so the lift to port it to OpenBSD was not too bad. This is a Tomcat application and uses a Postgres database. The build system is maven, and the frontend builds with node. A few things that were needed to get this port to work: 1.) Disable the frontend-maven-plugin as it attempts to download a Linux version of node/npm. We now manually do this in do-install using OpenBSD's node/npm. This is the only patch. 2.) They typically use an installation script specific to Ubuntu that controls replacing variables in configuration files and setting up the Postgres database after installation. However, the database can be configured via an initialization sql script. What I've done is crafted a maven build.properties to set our defaults for OpenBSD, and replaced the values for the sql init script. This made is fully self-contained. 3.) README points out the user must copy the produced WAR and XML in /var/tomcat as expected for any Tomcat based app. 4.) We only need Maven/Node for the build process so these are BUILD_DEPENDS. Tomcat and Postgres are the RUN_DEPENDS. 5.) Like other ports, we need to ensure this can build offline. I've created a custom "vendor" target for make that will control an OFFLINE variable to allow downloading all the maven/node/bower dependencies. I then package these .m2 - maven, .npm - node .cache - bower into a tgz. I've hosted it (for now) at my domain though I would prefer not to. 6.) They support English and Russian (via a separate SQL initialization script) -- I've opted to just handle English for now. I'd appreciate any feedback, comments, concerns. Would love to get this committed. -- Chaz
hmdm-server.tgz
Description: application/gtar-compressed
