870897a3e9
202: iso: avoid systemd service startup r=nrdxp a=blaggacao fixes #194 alternative to #197 # Manual Tests <details> <summary>was unrelated</summary> - [ ] `flk install NixOS --impure` correctly onto `/mnt` ❎ (looks like no profile is present) Issue: https://github.com/divnix/devos/issues/204 Upstream Issue: https://github.com/NixOS/nixpkgs/issues/116938 </details> - [x] acceptable build time / closure size ca 850MB (for a simple base OS) ✔️ - [x] local profile with `cage` service is disabled, that is: boots into terminal ✔️ - [x] success: air gapped / offline devshell enter ✔️ - [ ] failure: aire gapped target install: ← non blocking bonus item ❎ ```console $ flk install POS warning: you don't have internet access; disabling some network-dependent features building the flake in path:/iso/devos?narHash=sha265-... warning: you don't have internet access; disabling some network-dependent features error: unable to download 'https://api.github.com/repos/NixOS/nixpkgs/df8e3...': Couldn't resolve host name (6) ``` → detailed rationale in the commit messages ❤️ @Pacman99 for the excellent and detailed discussions in #197 and the may ideas, suggestions and code. Co-authored-by: David Arnold <dar@xoe.solutions> |
||
---|---|---|
.github | ||
cachix | ||
compat | ||
doc | ||
extern | ||
hosts | ||
lib | ||
modules | ||
nix | ||
overlays | ||
overrides | ||
pkgs | ||
profiles | ||
secrets | ||
shell | ||
suites | ||
tests | ||
theme | ||
users | ||
.editorconfig | ||
.envrc | ||
.gitignore | ||
book.toml | ||
bors.toml | ||
cachix.nix | ||
CHANGELOG.md | ||
COPYING | ||
default.nix | ||
flake.lock | ||
flake.nix | ||
README.md | ||
shell.nix | ||
SUMMARY.md |
⚠ 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 way 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.
Stiving 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: Alpha
A lot of the implementation is less than perfect, and huge redesigns will happen. 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.
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! 🎉
Upstream
I'd love to see this in the nix-community should anyone believe its reached a point of maturity to be generally useful, but I'm all for waiting until 1.0#121 to save the cache work, too.
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.
Inspiration & Art
License
DevOS is licensed under the MIT License.