diff options
author | Igor Pashev <pashev.igor@gmail.com> | 2017-04-12 21:36:02 +0300 |
---|---|---|
committer | Igor Pashev <pashev.igor@gmail.com> | 2017-04-12 21:43:06 +0300 |
commit | 53476b21ae669d37687d1d7051df78b1f866bafa (patch) | |
tree | 286410619effc5ce7f2f9525364d8ffd8ec20410 /README.md | |
parent | f9af3ca3a081d5b357628e8d8b239c26d316518f (diff) | |
download | nixsap-53476b21ae669d37687d1d7051df78b1f866bafa.tar.gz |
README: about and some features
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 58 |
1 files changed, 58 insertions, 0 deletions
@@ -1,3 +1,14 @@ +About +===== + +Nixsap is a set of modules built on top of +[NixOS](https://nixos.org/)/[Nixpkgs](https://nixos.org/nixpkgs/). Nixsap +provides NixOS modules in the `nixsap` "namespace", e. g. `nixsap.apps.mariadb` +or `nixsap.system.users`, and adds or overrides some packages in Nixpkgs. +From vanila Nixpkgs, Nixsap relies only on basic services like systemd, ssh, ntpd +and package set (extenting and overriding it). + + Requirements ============ @@ -11,6 +22,53 @@ This project is under the MIT license (see [LICENSE](LICENSE)), unless stated otherwise in individual files. + +Features +======== + +Plug & Play +----------- + +Each module under the [modules](./modules) directory is automatically available. +When creating a new machine just use + + imports = [ <nixsap> ]; + +Each package `foo` under the [modules/pkgs](./modules/pkgs) is automatically available as `pkgs.foo`. +For example: + + modules/pkgs/writeXML.nix => pkgs.writeXML + modules/pkgs/rdsdump/default.nix => pkgs.rdsdump + +You can use this technics in your own projects. + + +Automatic unix user id +----------------------- + +To create daemon users just add their names into the list +`nixsap.system.users.daemons`. List `nixsap.system.users.normal` does the +same for users with login shell, and `nixsap.system.groups` - for unix groups. +See examples in the [applications directory](./modules/apps) and implementation +in [modules/system/users.nix](modules/system/users.nix). This feature is +used throughout `nixsap.apps`. + +Examples: + + # id icinga + uid=1240920351(icinga) gid=100(users) groups=21(proc),100(users) + + # id pashev + uid=1141737888(pashev) gid=100(users) groups=100(users),21(proc),62(systemd-journal),1061782283(sysops) + + # id jenkins-dumpoo + uid=1201814562(jenkins-dumpoo) gid=1201814562(jenkins-dumpoo) groups=96(keys),1201814562(jenkins-dumpoo) + + # id mariadb + uid=1213117043(mariadb) gid=1213117043(mariadb) groups=96(keys),1213117043(mariadb) + + + Ideas ===== |