My NixOS configuration
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Kevin Baensch 528fec2f0d
NixOS 20.09 Changes.
10 months ago
config NixOS 20.09 Changes. 10 months ago
machines Switch from gnome-terminal to alacritty. 1 year ago
options Simplify $NIX_PATH evaluation. 2 years ago
pkgs python3: remove some unused stuff. 1 year ago
pkgsets NixOS 20.09 Changes. 10 months ago
services NixOS 20.09 Changes. 10 months ago
.gitmodules Use official nixos-mailserver repo and update to latest commit. 2 years ago
LICENSE Add LICENSE 2 years ago
README.org Started writing a Documentation. 2 years ago
configuration.nix Fix import and make pkgFilter recurse into dependencies. 1 year ago
fn.nix fn.nix: pkgFilter rewrite, can now define custom test cases 1 year ago

README.org

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