https://github.com/ai/susedko
Fedora CoreOS ignition config for my home server
https://github.com/ai/susedko
Last synced: 7 months ago
JSON representation
Fedora CoreOS ignition config for my home server
- Host: GitHub
- URL: https://github.com/ai/susedko
- Owner: ai
- License: mit
- Created: 2022-05-23T12:16:57.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2025-01-16T23:03:48.000Z (over 1 year ago)
- Last Synced: 2025-01-16T23:26:02.738Z (over 1 year ago)
- Language: Makefile
- Homepage:
- Size: 191 KB
- Stars: 14
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Susedko Home Server
[Fedora CoreOS] ignition config for my home server.
[Fedora CoreOS]: https://docs.fedoraproject.org/en-US/fedora-coreos/getting-started/
## Prepare
To test locally or to flash image to USB drive you need:
```sh
sudo dnf install make podman qemu-system-x86-core
```
Save your Docker.io token to `units/dockerhub/docker-auth.json`:
```json
{
"auths": {
"docker.io": {
"auth": "YOUR_TOKEN"
}
}
}
```
## Development
Run in one terminal:
```sh
make demo
```
And then run in another terminal:
```sh
make shell
```
Press Ctrl + A X to exit demo server shell.
Call `make clean` to remove all temporary files from the dir and system.
## Install
Insert USB flash drive and call:
```sh
make flash
```
It will write image to `/dev/sda`. Change `Makefile` if you need another path.
Then insert drive to machine and boot it. It will automatically install
system to `/dev/mmcblk1` (change `Makefile` for another drive).
## Other Setup
After re-installing the server you need to prepare some files on HDD.
Copy Home Assistant configs:
```
make ha
```
Create backup:
```sh
borg init --encryption repokey-blake2 ai@susedko.local:/var/mnt/vault/ai/backup
```
Prepare ngrams and copy them to `/var/mnt/vault/.config/ngrams`:
```sh
wget https://languagetool.org/download/ngram-data/ngrams-en-20150817.zip
wget https://languagetool.org/download/ngram-data/ngrams-es-20150915.zip
wget https://languagetool.org/download/ngram-data/untested/ngram-ru-20150914.zip
unzip ngrams-en-20150817.zip
unzip ngrams-es-20150915.zip
unzip ngram-ru-20150914.zip
rm ngram*.zip
```
Set to Nextcloud config at `/var/mnt/vault/nextcloud/config/config.php`:
```php
'overwrite.cli.url' => 'https://nextcloud.local',
'overwriteprotocol' => 'https',
```
## Prepare Clients for Local Domains
Install [`./sitniks.crt`](./sitniks.crt) CA certificate to your system.
For MacOS:
```sh
sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain ./sitniks.crt
```
For Linux CLI:
```sh
sudo dnf install nss-tools
certutil -d sql:$HOME/.pki/nssdb -A -t "C,," -n sitnik -i ~/Dev/susedko/sitniks.crt
sudo cp ~/Dev/susedko/sitniks.crt /etc/pki/ca-trust/source/anchors/sitniks.pem
sudo update-ca-trust
```
For Firefox on Linux: go to `about:preferences#privacy`, click on `View Certificates`, and import `sitniks.crt`.
For Chrome on Linux: go to `chrome://settings/certificates`, click on `Authorities`, and add `sitniks.crt`.