Find a file
2021-02-14 22:11:49 -07:00
.github workflows: prepare for merge 2021-02-14 17:44:34 -07:00
cachix doc: new mdbook documentation 2021-02-14 02:46:05 -07:00
compat flake: manage flake-compate as input 2021-02-14 22:08:24 -07:00
doc doc: finish flk reference 2021-02-14 17:41:15 -07:00
extern doc: new mdbook documentation 2021-02-14 02:46:05 -07:00
hosts doc: finish flk reference 2021-02-14 17:41:15 -07:00
lib flake: rename flake-utils input 2021-02-14 22:11:49 -07:00
modules doc: new mdbook documentation 2021-02-14 02:46:05 -07:00
nix ci: reformulate 2021-02-14 19:03:51 -07:00
overlays doc: new mdbook documentation 2021-02-14 02:46:05 -07:00
overrides doc: new mdbook documentation 2021-02-14 02:46:05 -07:00
pkgs doc: new mdbook documentation 2021-02-14 02:46:05 -07:00
profiles core: pin registry by ref 2021-02-14 15:50:49 -07:00
secrets doc: new mdbook documentation 2021-02-14 02:46:05 -07:00
shell doc: new mdbook documentation 2021-02-14 02:46:05 -07:00
suites doc: new mdbook documentation 2021-02-14 02:46:05 -07:00
theme doc: finish flk reference 2021-02-14 17:41:15 -07:00
users doc: new mdbook documentation 2021-02-14 02:46:05 -07:00
.editorconfig editorconfig: fixup 2020-12-30 01:00:12 -07:00
.envrc compat: fixes 2021-01-23 16:45:10 -07:00
.gitignore doc: new mdbook documentation 2021-02-14 02:46:05 -07:00
book.toml doc: new mdbook documentation 2021-02-14 02:46:05 -07:00
cachix.nix format: apply nixpkgs-fmt 2020-07-30 22:17:28 -06:00
COPYING init 2019-12-02 22:18:30 -07:00
default.nix shell: workaround https://github.com/NixOS/nix/issues/4529 2021-02-06 13:27:26 -07:00
flake.lock flake: rename flake-utils input 2021-02-14 22:11:49 -07:00
flake.nix flake: rename flake-utils input 2021-02-14 22:11:49 -07:00
README.md doc: finish flk reference 2021-02-14 17:41:15 -07:00
shell.nix compat: fixes 2021-01-23 16:45:10 -07:00
SUMMARY.md doc: finish flk reference 2021-02-14 17:41:15 -07:00

Introduction

Nixflk is a template which grants a simple way to use, deploy and manage NixOS systems for personal and productive use. It does this by providing a sane repository structure, integrating several popular projects like home-manager, setting clear guidelines, offering useful conveniences, and eliminating boilerplate so you can focus on deploying your systems.

Getting Started

Check out the guide to get up and running.

Motivation

NixOS provides an amazing abstraction to manage our computers, but that new power can sometimes bring feelings of overwhelm and confusion. Having a turing complete programming language can add an unlimited potential for complexity if we do it wrong. Instead, we should have a community consensus on how to manage a NixOS system — consider this a first attempt.

The future is declarative! 🎉

Community Profiles

There are two branches from which to choose: core and community. The community branch builds on core and includes several ready-made profiles for discretionary use.

Every package and NixOS profile declared in community is uploaded to cachix, so everything provided is available without building anything. This is especially useful for the packages that are overridden from master, as without the cache, rebuilds are quite frequent.

⚠ Advisory ⚠

Nixflk leverages the flakes feature available via an experimental branch of nix. Until nix 3.0 is released, this project should be considered unstable.

License

Nixflk is licensed under the MIT License.