My NixOS configuration
Find a file
2023-08-18 11:49:46 +02:00
config Add pyluxafor package. 2023-08-18 11:49:46 +02:00
machines Add podman service. 2023-06-07 02:19:22 +02:00
options Remove secretPath from machine config. 2023-04-16 18:25:52 +02:00
pkgs Add pyluxafor package. 2023-08-18 11:49:46 +02:00
pkgsets Emacs: add docker and dockerfile mode. 2023-08-18 11:49:46 +02:00
services sub-uid/gid are only needed for podman; improve readability 2023-06-14 21:55:43 +02:00
.gitmodules Use official nixos-mailserver repo and update to latest commit. 2019-11-20 10:09:34 +01:00
.sops.yaml Add Ophanim sops key. 2023-06-14 21:57:49 +02:00
configuration.nix Fix import and make pkgFilter recurse into dependencies. 2020-05-10 17:16:08 +02:00
flake.lock Update flake lock. 2023-06-07 02:19:23 +02:00
flake.nix Add gitpkgs to flake inputs and configure package overlays. 2023-04-16 18:25:02 +02:00
fn.nix Update filter for python2. 2021-10-28 10:36:06 +02:00
LICENSE Add LICENSE 2019-05-19 06:12:28 +02:00
README.org Started writing a Documentation. 2019-10-09 14:48:11 +02:00

THIS README IS A WIP IF YOU DON'T KNOW WHAT YOU ARE DOING YOU PROBABLY WONT GET IT TO RUN ON YOUR SYSTEM.

TODO Introduction

This is my NixOS configuration, it provides an abstraction from the already existing options on NixOS. To be more precise it is a collection of preconfigured services and metapackages that can be toggled and configured through a single NixOS submodule.

It's flexible enough to manage all my machines (multiple Servers and Desktops).

Currently the following services are configured:

  • Desktop

    • i3
  • MySQL/MariaDB
  • cups
  • fail2ban
  • nginx

    • Nextcloud
    • Gitea
    • Hydra (works but could be better)
  • openssh

TODO Getting Started/Setup Guide

WARNING:
I still change machine option names rather frequently and whilst it works for me it may break for you. You have been warned.

Nixpkgs Channels

See NixOS Channels. This Project references 4 channels:

nixos
Your main channel, can be any NixOS channel of your choosing.
nixos-stable
Should point to the current NixOS/NixOS-small channel.
nixos-unstable
Should point to nixos-unstable or nixos-unstable-small.
gitpkgs
A copy of the current nixpkgs git repo cloned into you system root.

Currently these channels are only referenced in pkgsets.nix. It can be easily replaced and is therefore optional (but recommended).

nix-channel --add https://nixos.org/channels/nixos-unstable nixos
nix-channel --add https://nixos.org/channels/nixos-19.09 nixos-stable
nix-channel --add https://nixos.org/channels/nixos-unstable nixos-unstable
nix-channel --update
git clone https://github.com/nixos/nixpkgs /nixpkgs

TODO Submodule Documentation

  • [TODO] Create a setup script.

All Submodules are defined in options.

machines

copySysConf