Find a file
2021-07-07 21:03:31 -05:00
.github Check & Upload to Cache with GitHub Action 2021-04-24 16:43:09 -05:00
doc doc: nvfetcher 2021-06-24 21:37:51 -05:00
hosts doc: move all docs under doc 2021-04-18 20:42:49 -06:00
lib add in-tree local lib, ourlib 2021-05-05 13:44:39 -07:00
modules bump digga to latest develop 2021-06-24 18:11:24 -05:00
overlays fix hasekllPackages overlay 2021-06-24 22:58:26 -07:00
pkgs ref: move devshell module here to devos again 2021-07-07 21:03:31 -05:00
profiles core: use bottom instead of gotop 2021-06-30 08:50:07 -06:00
secrets Add agenix integration to secrets and flake 2021-05-14 18:38:55 -07:00
shell ref: move devshell module here to devos again 2021-07-07 21:03:31 -05:00
users bump digga to latest develop 2021-06-24 18:11:24 -05:00
.editorconfig editorconfig: fixup 2020-12-30 01:00:12 -07:00
.envrc treewide cleanups and refactoring for initial tests (#157) 2021-03-14 07:10:51 +00:00
.gitignore ref: move devshell module here to devos again 2021-07-07 21:03:31 -05:00
bors.toml bors.toml: don't delete merged branches 2021-05-14 22:49:39 -07:00
CHANGELOG.md Update Changelog for tag 2021-05-27 17:02:40 +00:00
COPYING init 2019-12-02 22:18:30 -07:00
default.nix default.nix: fix path to compat 2021-05-16 10:22:40 -07:00
flake.lock ref: move devshell module here to devos again 2021-07-07 21:03:31 -05:00
flake.nix ref: move devshell module here to devos again 2021-07-07 21:03:31 -05:00
README.md feature: Add pkgs fetch manager nvfetcher 2021-06-24 21:37:50 -05:00
shell.nix lib: move compat to lib 2021-04-18 20:51:47 -06:00

Bors enabled MIT License NixOS

⚠ Advisory ⚠

DevOS requires the flakes feature available via an experimental branch of nix. Until nix 3.0 is released, this project should be considered unstable, though quite usable as flakes have been maturing well for a while.

Introduction

DevOS grants a simple template to use, deploy and manage NixOS systems for personal and productive use. A sane repository structure is provided, integrating several popular projects like home-manager, devshell, and more.

Striving for nix first™ solutions with unobstrusive implementations, a flake centric approach is taken for useful conveniences such as automatic source updates.

Skip the indeterminate nature of other systems, and the perceived tedium of bootstrapping Nix. It's easier than you think!

Status: Beta

Although this project has already matured quite a bit, especially through recent outfactoring of digga, a fair amount of api polishing is still expected. There are unstable versions (0.x.x) to help users keep track of changes and progress.

Getting Started

Check out the guide to get up and running. Also, have a look at flake.nix. If anything is not immediately discoverable from there through digga library's mkFlake, please file a bug report.

In the Wild

The author maintains his own branch, so you can take inspiration, direction, or make critical comments about the code. 😜

Motivation

NixOS provides an amazing abstraction to manage our environment, but that new power can sometimes bring feelings of overwhelm and confusion. Having a turing complete system can easily lead to unlimited complexity if we do it wrong. Instead, we should have a community consensus on how to manage a NixOS system and its satellite projects, from which best practices can evolve.

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.

Shoulders

This work does not reinvent the wheel. It stands on the shoulders of the following giants:

🧅 — like the layers of an onion

👪 — like family

❤️

Inspiration & Art

Divnix

The divnix org is an open space that spontaniously formed out of "the Nix". It is really just a place where otherwise unrelated people a) get together and b) stuff done.

It's a place to stop "geeking out in isolation" (or within company boundaries), experiment and learn together and iterate quickly on best practices. That's what it is.

It might eventually become a non-profit if that's not too complicated or if those goals are sufficiently upstreamed into "the Nix", dissolved.

License

DevOS is licensed under the MIT License.