Quick Start Guide
NOTE: HomeFree is still under heavy development, and not yet ready for use by non-technical users. This guide is for users and developers comfortable installing and configuring software on Linux.
1Acquire Hardware
HomeFree has been tested on AMD and Intel-based x86 hardware. The minimum requirements are still in flux, but you'll want a device that has at least 8Gb of memory and a decent CPU, since it will be running many services. It also MUST have two ethernet ports, one for the WAN/connection to the public internet, and one for your LAN/intranet.
This instance is running on an Intel NUC 9 Pro NUC9VXQNX, but it surely will run on less expensive hardware.
2Get a Nix environment set up on your host machine.
HomeFree must be deployed from another machine with Nix installed. If you are on NixOS, you should be good to go. If you are on a different distribution of Linux, follow the instructions on how to install and use Nix.
3Get the code
Download the sample host config to your workstation.
git clone https://git.homefree.host/homefree/sample-config
4Prepare the configuration
Update configuration.nix with your preferred settings. More details TBD.
5Get the IP address of the target machine
Create a bootable USB flash drive of the minimal NixOS ISO image. Simple instructions can be found here.
Boot the target machine with the USB flash drive
6Hardware Preparation
Disable secure boot in the BIOS of the target machine.
Plug the machine into an ethernet cable.
7Create NixOS bootable flash drive and boot up machine
After the machine is has booted the minimal NixOS image and you are logged in, get the IP address with the following:
ip addr show
8Install HomeFree
Run the installation script. Again, make sure the target computer is connected to an ethernet cable.
Enter the IP of the target machine as directed.
./install.sh
9Next Steps
Now that you have a running instance, you should be able to log in with:
ssh [adminUsername]@10.0.0.1
You might want to:
- Browse to https://www.[your domain]
- Explore the configuration options
- Set up authentication
- Verify that DDNS is configured properly and your domain is pointing at your server