Core homefree module exposed as a Nix flake https://homefree.host
Find a file
2024-10-26 15:49:19 -07:00
apps * Added virtual services through caddy 2023-12-10 11:32:48 -08:00
hosts added vaultwarden 2024-10-26 15:49:19 -07:00
profiles added vaultwarden 2024-10-26 15:49:19 -07:00
scripts Sops integrated; home assistant functioning; authentik integrated but not yet working 2024-04-24 09:22:04 -07:00
secrets updated ddclient config 2024-10-26 14:40:35 -07:00
.gitignore updated ddclient config 2024-10-26 14:41:16 -07:00
.sops.yaml upgraded to NixOS 24.05; doc update; minor tweaks 2024-09-19 21:40:20 -07:00
build-image.sh upgraded to NixOS 24.05; doc update; minor tweaks 2024-09-19 21:40:20 -07:00
build.sh made building system vs image explicity 2023-12-24 16:05:42 -08:00
default.nix First revision 2023-11-25 20:39:23 -08:00
flake.lock upgraded to NixOS 24.05; doc update; minor tweaks 2024-09-19 21:40:20 -07:00
flake.nix upgraded to NixOS 24.05; doc update; minor tweaks 2024-09-19 21:40:20 -07:00
generate-sops-config.sh upgraded to NixOS 24.05; doc update; minor tweaks 2024-09-19 21:40:20 -07:00
import-ssh-keys-to-gpg.sh Sops integrated; home assistant functioning; authentik integrated but not yet working 2024-04-24 09:22:04 -07:00
Makefile started sops config; got ddclient to work 2024-01-14 01:12:45 -08:00
README.md updated ddclient config 2024-10-26 14:41:16 -07:00
run.sh added vaultwarden 2024-10-26 15:49:19 -07:00
setup.sh fixed perms for NM config 2023-12-27 21:20:15 -08:00
TODOS.md added vaultwarden 2024-10-26 15:49:19 -07:00

HomeFree Self-Hosting Platform

HomeFree is a platform for easy, flexible, and progressive self-hosting to liberate you from giant cloud providers.

“These were rice paddies before they were parking lots. Rice was the basis for our society. Peasants planted the seeds and had highest status in the Confucian hierarchy. As the Master said, “Let the producers be many and the consumers few.' When the Feed came in from Atlantis, from Nippon, we no longer had to plant, because the rice now came from the matter compiler. It was the destruction of our society. When our society was based upon planting, it could truly be said, as the Master did, “Virtue is the root; wealth is the result.' But under the Western ti, wealth comes not from virtue but from cleverness. So the filial relationships became deranged. Chaos,” Dr. X said regretfully, then looked up from his tea and nodded out the window. “Parking lots and chaos.”

― Neal Stephenson, The Diamond Age: Or, a Young Lady's Illustrated Primer

Dr. X raised one hand a few inches from the tabletop, palm down, and pawed once at the air. Hackworth recognized it as the gesture that well-to-do Chinese used to dismiss beggars, or even to call bullshit on people during meetings. "They are wrong," he said. "They do not understand. They think of the Seed from a Western perspective. Your cultures--and that of the Coastal Republic--are poorly organized. There is no respect for order, no reverence for authority. Order must be enforced from above lest anarchy break out. You are afraid to give the Seed to your people because they can use it to make weapons, viruses, drugs of their own design, and destroy order. You enforce order through control of the Feed. But in the Celestial Kingdom, we are disciplined, we revere authority, we have order within our own minds, and hence the family is orderly, the village is orderly, the state is orderly. In our hands the Seed would be harmless."

― Neal Stephenson, The Diamond Age: Or, a Young Lady's Illustrated Primer

Don't suckle the Feed. Cultivate the Seed.

Building

make build-image

Running

make run

Adding a secret

nix-shell -p sops --run "sops secrets/authentik.yaml"

Then add a key or keys, e.g.

env-vars: |
     VAR1 = abc
     VAR2 = def

Then reference in Nix config as follows:

config.sops.secrets.app.env-vars.path

Or point directly to the path, e.g.

sops.secrets."app" = {
  owner = "homefree";
  path = "/run/secrets/app/env-vars";
  restartUnits = [ "app.service" ];
};

and reference the path in config

Getting server key

After starting the vm using make run, run make generate-sops-config

Then, within the VM:

cd ~/nixcfg
make build

Initializing Authentik

Browse to:

http://ha.homefree.lan:9000/if/flow/initial-setup/

Changing password for Authentik

ak create_recovery_key 10 akadmin