Whether your building a new DART Appliance, or just want to learn more about DART, this is a good place to start.
aihowscctv.com
Start with Raspian Lite.
Note: Commands run as a superuser will be prefixed with /...# while commands run as a regular user will be prefixed with /...$
Turn on SSH with raspi-config. Option 5 (Interfacing Options), then option P2 (SSH):
/...# raspi-config
Add some utilities:
/...# apt update
/...# apt install mc tmux htop iftop
The following is from the MeshCentral Install PDF:
http://info.meshcentral.com/downloads/MeshCentral2/MeshCentral2InstallGuide.pdf
Install the current nodejs:
/...# curl -sL https://deb.nodesource.com/setup_14.x | bash -
/...# apt-get install -y nodejs
Port permissions (to allow node to use ports below 1024):
Use the whereis command to find the path to the node executable and use that path in the setcap command:
Note: I believe this is so you can run node as non-root, but still run on ports 80 & 443.
/...# whereis node
/...# setcap cap_net_bind_service=+ep /usr/bin/node
Install MeshCentral (Important Note: Run npm as a regular user)
/...$ npm install meshcentral
Run MeshCentral as the non-root user. The --fastcert switch will use RSA2048 instead of RSA3072 since we are only on a Raspberry Pi.
/...$ node node_modules/meshcentral --fastcert
Use a browser and go to the IP addr of the Pi. (The 1st user to be defined will be the Administrator.)
Setup systemd to start & stop MeshCentral.
Create the file /etc/systemd/system/meshcentral.service
/...$ sudo nano /etc/systemd/system/meshcentral.service
Enter the following into the file:
[Unit]
Description=MeshCentral Server
[Service]
Type=simple
LimitNOFILE=1000000
ExecStart=/usr/bin/node /home/pi/node_modules/meshcentral
WorkingDirectory=/home/pi
Environment=NODE_ENV=production
User=pi
Group=pi
Restart=always
# Restart service after 10 seconds if node service crashes
RestartSec=10
# Set port permissions capability
AmbientCapabilities=cap_net_bind_service
[Install]
WantedBy=multi-user.target
Enable & start MeshCentral using systemd:
/...# systemctl enable meshcentral.service
/...# systemctl start meshcentral.service
Finished. Reboot the Pi to make sure everything starts up as it should.
Here is the short list for use in the Core module (and also the main DART website).
CMS Link | JSON API | Online Edit | Templates | CLI Needed | Multiple Logins | Nonpublic Content | Zipped Size | Issues | Annoyances | Notes |
Bludit | Plugin | WYSIWYG Markdown | No? | No | Yes | 1.6M | No warning when leaving the editor without saving. If the editor sits for too long, saving brings you to the login screen without saving. | Plugin adds API to the Web UI | ||
FlexType | REST | WYSIWYG Markdown | Forms? Fieldsets? | No | Yes | 3.4M | Existing links don't show in the editor. (they show as regular text) I'm not sure how to edit them; only insert new ones. | |||
HTMLy | Yes | WYSIWYG Markdown | Yes? | .ini file for each user | Yes | login? | 1.5M | Links are resolved by the base CMS not HTMLy | Can not find API Docs |
Super small. These may have a place as an embedded tool.
CMS Link | JSON API | Online Edit | Templates | CLI Needed | Multiple Logins | Nonpublic Content | Zipped Size | Issues | Annoyances | Notes |
FlatPress | No | BBCode Markdown | No? | No | No | 852K | ||||
Pico | No | Plugin | Twig | Create/Edit Files/Dirs | No | 820K | ||||
Singularity | No | No | No? | Create/Edit Files/Dirs | No | 16K | 40 lines of PHP wrapped around Strapdown.js | |||
WonderCMS | No | In-Line | Sort-of | Make Templates? | No | admin? | 25K | Long pause at 1st login of the day | ||
Yellow | No | Markdown | Layouts? | New Layouts? | No | 296K | Install for CMS, Wiki, or Blog |
Here are the rest that are ready to look at.
CMS Link | JSON API | Online Edit | CLI Needed | Templates |
Multiple Logins |
Nonpublic Content | Zipped Size | Issues | Annoyances | Notes |
Automad | Headless | 2.6M | API or UI - Not Both | |||||||
GetSimple | DevAPI | 1.3M | API only for plugin development | |||||||
Grav | Plugin? | Plugin | Create/Edit Files/Dirs | admin? | 10.4M | A beast: 10 Meg + dozens of Themes & hundreds of Plugins | ||||
Typesetter | No | 4.1M |
We were unable to get this last group working under the same single instance of Lighttpd. (The above projects are all running under the same instance of Lighttpd, but have their own URL subsection & their own directory outside of the web doc root.) We will still give them a look, so we will install them as they were intended to be used (as a single CMS per web server, in the document root of the webserver's file system, and at the root of the URL).
CMS Link | JSON API | Online Edit | CLI Needed | Templates |
Multiple Logins |
Nonpublic Content | Zipped Size | Issues | Annoyances | Notes |
Mecha | No | 90K | no css | |||||||
Parvula | REST | 1.5M | 'no VIEW' error in Admin | |||||||
PhileCMS | 510K | links not working |
These links all go to a functioning CMS in the demo area. They will remain functional for testing. Periodic backups are made, so if one get too messed up, we can roll it back to a functioning state. Do not assume that anything you put into one of these projects will get backed up. Several people are testing these projects, and you will probably step on each others toes at some point.
As we learn the different packages, clean installations will be set up at the following sites. The purpose of these installations will be to see if a given project is a good fit for the production site at that link.
Domain / Site | www | cdn | wiki | blog |
rissresearch.com | ||||
tweedman.com | ||||
chewymetal.com | ||||
dart101.org | ||||
vega101.org | ||||
omni101.org |
Start writing your own content or edit the current to fit your needs. To create, edit or remove content you need to login to the admin panel with the username admin
and the password you set in the installation process.
Update the settings of your site from the admin panel, you can change the title, description and the social networks from Settings > General.