MacOS
If you notice any mistakes that need to be corrected, please reach out on Discord!
MongoDB
Petio supports two ways of connecting to a Mongo Database instance, locally or remote. We recommend the locally hosted MongoDB option.
Macs with the new M1 chip (arm64 arch) do not yet support Mongo locally installed. Please use either Remote MongoDB Hosting or any of the Docker options.
MongoDB Locally
Add the Official MongoDB Repo to homebrew:
brew tap mongodb/brewInstall MongoDB:
brew install [email protected]Start MongoDB as a service:
brew services start mongodb-communityMongoDB Locally - On A Different Host
Please review the Linux guides and make changes as necessary for your situation.
MongoDB Remotely
Register for Atlas here.
Create a free cluster.

Change the provider or region if you need to. It may take some time to create the cluster.

After the cluster is made, click on connect and select MongoDB Compass and follow the instructions on screen.

Move on to the next section to start installing Petio.
Petio as a Service
First make a directory for Petio:
sudo mkdir /opt/PetioDownload the latest version of Petio:
sudo curl -L https://petio.tv/releases/latest --output petio-latest.zipExtract Petio to the directory we just made:
sudo unzip petio-latest.zip -d /opt/PetioChange the permissions so that Petio can work as expected:
sudo chown -R ${USER}:staff /opt/PetioTo have Petio running in the background without user input, we will use
launchctl.To more-or-less control
launchddefine a service for Petio like shown below and save it astv.petio.plistin the~/Library/LaunchAgents/folder.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>tv.petio</string>
<key>ProgramArguments</key>
<array>
<string>/opt/Petio/bin/petio-macos</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>Load the service using:
launchctl load ~/Library/LaunchAgents/tv.petio.plistStart the service using:
launchctl start tv.petioVerify that Petio is indeed running:
launchctl list | grep tv.petioTo stop Petio, run:
launchctl stop tv.petioOnce you've completed theses steps, you can navigate to http://<hostname>:7777 to start configuring Petio.
Updating Petio
Stop the Petio service with
launchctl.Navigate to the directory you have Petio installed in, then, download the latest version from the Downloads page with:
curl -L https://petio.tv/releases/latest --output petio-latest.zipExtract the contents of freshly downloaded archive while overwriting the current contents of the current directory with:
unzip -o petio-latest.zip -d ./Lastly, start the Petio service back up again with
launchctl.
Last updated