|
1 | | -# Nix |
| 1 | +<p align="center"> |
| 2 | + <a href="https://determinate.systems" target="_blank"><img src="https://raw.githubusercontent.com/determinatesystems/.github/main/.github/banner.jpg"></a> |
| 3 | +</p> |
| 4 | +<p align="center"> |
| 5 | + <a href="https://determinate.systems/discord" target="_blank"><img alt="Discord" src="https://img.shields.io/discord/1116012109709463613?style=for-the-badge&logo=discord&logoColor=%23ffffff&label=Discord&labelColor=%234253e8&color=%23e4e2e2"></a> |
| 6 | + <a href="https://bsky.app/profile/determinate.systems" target="_blank"><img alt="Bluesky" src="https://img.shields.io/badge/Bluesky-0772D8?style=for-the-badge&logo=bluesky&logoColor=%23ffffff"></a> |
| 7 | + <a href="https://hachyderm.io/@determinatesystems" target="_blank"><img alt="Mastodon" src="https://img.shields.io/badge/Mastodon-6468fa?style=for-the-badge&logo=mastodon&logoColor=%23ffffff"></a> |
| 8 | + <a href="https://twitter.com/DeterminateSys" target="_blank"><img alt="Twitter" src="https://img.shields.io/badge/Twitter-303030?style=for-the-badge&logo=x&logoColor=%23ffffff"></a> |
| 9 | + <a href="https://www.linkedin.com/company/determinate-systems" target="_blank"><img alt="LinkedIn" src="https://img.shields.io/badge/LinkedIn-1667be?style=for-the-badge&logo=linkedin&logoColor=%23ffffff"></a> |
| 10 | +</p> |
2 | 11 |
|
3 | | -[](https://opencollective.com/nixos) |
4 | | -[](https://github.com/NixOS/nix/actions/workflows/ci.yml) |
| 12 | +# Determinate Nix |
5 | 13 |
|
6 | | -Nix is a powerful package manager for Linux and other Unix systems that makes package |
7 | | -management reliable and reproducible. Please refer to the [Nix manual](https://nix.dev/reference/nix-manual) |
8 | | -for more details. |
| 14 | +[](https://github.com/DeterminateSystems/nix-src/actions/workflows/ci.yml) |
9 | 15 |
|
10 | | -## Installation and first steps |
| 16 | +This repository houses the source for [**Determinate Nix**][det-nix], a downstream distribution of [Nix][upstream] created and maintained by [Determinate Systems][detsys]. |
| 17 | +Nix is a powerful [language], [package manager][package-management], and [CLI] for [macOS](#macos), [Linux](linux), and other Unix systems that enables you to create fully reproducible [development environments][envs], to build [packages] in sandboxed environments, to build entire Linux systems using [NixOS], and much more. |
11 | 18 |
|
12 | | -Visit [nix.dev](https://nix.dev) for [installation instructions](https://nix.dev/tutorials/install-nix) and [beginner tutorials](https://nix.dev/tutorials/first-steps). |
| 19 | +Determinate Nix is part of the [Determinate platform][determinate], which also includes [FlakeHub], a secure flake repository with features like [FlakeHub Cache][cache], [private flakes][private-flakes], and [semantic versioning][semver] (SemVer) for [flakes]. |
13 | 20 |
|
14 | | -Full reference documentation can be found in the [Nix manual](https://nix.dev/reference/nix-manual). |
| 21 | +## Installing Determinate |
15 | 22 |
|
16 | | -## Building and developing |
| 23 | +You can install Determinate on [macOS](#macos), non-NixOS [Linux](#linux) and WSL, and [NixOS](#nixos). |
17 | 24 |
|
18 | | -Follow instructions in the Nix reference manual to [set up a development environment and build Nix from source](https://nix.dev/manual/nix/development/development/building.html). |
| 25 | +### macOS |
19 | 26 |
|
20 | | -## Contributing |
| 27 | +On macOS, we recommend using the graphical installer from Determinate Systems. |
| 28 | +Click [here][gui] to download and run it. |
| 29 | + |
| 30 | +### Linux |
| 31 | + |
| 32 | +On Linux, including Windows Subsystem for Linux (WSL), we recommend installing Determinate Nix using [Determinate Nix Installer][installer]: |
| 33 | + |
| 34 | +```shell |
| 35 | +curl -fsSL https://install.determinate.systems/nix | sh -s -- install --determinate |
| 36 | +``` |
| 37 | + |
| 38 | +### NixOS |
| 39 | + |
| 40 | +On [NixOS], we recommend following our [dedicated installation guide][nixos-install]. |
21 | 41 |
|
22 | | -Check the [contributing guide](./CONTRIBUTING.md) if you want to get involved with developing Nix. |
| 42 | +## Other resources |
23 | 43 |
|
24 | | -## Additional resources |
| 44 | +Nix was created by [Eelco Dolstra][eelco] and developed as the subject of his 2006 PhD thesis, [The Purely Functional Software Deployment Model][thesis]. |
| 45 | +Today, a worldwide developer community contributes to Nix and the ecosystem that has grown around it. |
25 | 46 |
|
26 | | -Nix was created by Eelco Dolstra and developed as the subject of his PhD thesis [The Purely Functional Software Deployment Model](https://edolstra.github.io/pubs/phd-thesis.pdf), published 2006. |
27 | | -Today, a world-wide developer community contributes to Nix and the ecosystem that has grown around it. |
| 47 | +- [Zero to Nix][z2n], Determinate Systems' guide to Nix and [flakes] for beginners |
| 48 | +- [Nixpkgs], a collection of well over 100,000 software packages that you can build and manage using Nix |
| 49 | +- [NixOS] is a Linux distribution that can be configured fully declaratively |
| 50 | +- The Nix, Nixpkgs, and NixOS community on [nixos.org][website] |
28 | 51 |
|
29 | | -- [The Nix, Nixpkgs, NixOS Community on nixos.org](https://nixos.org/) |
30 | | -- [Official documentation on nix.dev](https://nix.dev) |
31 | | -- [Nixpkgs](https://github.com/NixOS/nixpkgs) is [the largest, most up-to-date free software repository in the world](https://repology.org/repositories/graphs) |
32 | | -- [NixOS](https://github.com/NixOS/nixpkgs/tree/master/nixos) is a Linux distribution that can be configured fully declaratively |
33 | | -- [Discourse](https://discourse.nixos.org/) |
34 | | -- Matrix: [#users:nixos.org](https://matrix.to/#/#users:nixos.org) for user support and [#nix-dev:nixos.org](https://matrix.to/#/#nix-dev:nixos.org) for development |
| 52 | +## Reference |
| 53 | + |
| 54 | +The primary documentation for Determinate and Determinate Nix is available at [docs.determinate.systems][determinate]. |
| 55 | +For deeply technical reference material, see the [Determinate Nix manual][manual] which is based on the upstream Nix manual. |
35 | 56 |
|
36 | 57 | ## License |
37 | 58 |
|
38 | | -Nix is released under the [LGPL v2.1](./COPYING). |
| 59 | +[Upstream Nix][upstream] is released under the [LGPL v2.1][license] license. |
| 60 | +[Determinate Nix][det-nix] is also released under LGPL v2.1 in accordance with the terms of the upstream license. |
| 61 | + |
| 62 | +## Contributing |
| 63 | + |
| 64 | +Check the [contributing guide][contributing] if you want to get involved with developing Nix. |
| 65 | + |
| 66 | +[cache]: https://docs.determinate.systems/flakehub/cache |
| 67 | +[cli]: https://manual.determinate.systems/command-ref/new-cli/nix.html |
| 68 | +[contributing]: ./CONTRIBUTING.md |
| 69 | +[det-nix]: https://docs.determinate.systems/determinate-nix |
| 70 | +[determinate]: https://docs.determinate.systems |
| 71 | +[detsys]: https://determinate.systems |
| 72 | +[dnixd]: https://docs.determinate.systems/determinate-nix#determinate-nixd |
| 73 | +[eelco]: https://determinate.systems/people/eelco-dolstra |
| 74 | +[envs]: https://zero-to-nix.com/concepts/dev-env |
| 75 | +[flakehub]: https://flakehub.com |
| 76 | +[flakes]: https://zero-to-nix.com/concepts/flakes |
| 77 | +[gui]: https://install.determinate.systems/determinate-pkg/stable/Universal |
| 78 | +[installer]: https://github.com/DeterminateSystems/nix-installer |
| 79 | +[language]: https://zero-to-nix.com/concepts/nix-language |
| 80 | +[license]: ./COPYING |
| 81 | +[manual]: https://manual.determinate.systems |
| 82 | +[nixpkgs]: https://github.com/NixOS/nixpkgs |
| 83 | +[nixos]: https://github.com/NixOS/nixpkgs/tree/master/nixos |
| 84 | +[nixos-install]: https://docs.determinate.systems/guides/advanced-installation#nixos |
| 85 | +[packages]: https://zero-to-nix.com/concepts/packages |
| 86 | +[package-management]: https://zero-to-nix.com/concepts/package-management |
| 87 | +[private-flakes]: https://docs.determinate.systems/flakehub/private-flakes |
| 88 | +[semver]: https://docs.determinate.systems/flakehub/concepts/semver |
| 89 | +[thesis]: https://edolstra.github.io/pubs/phd-thesis.pdf |
| 90 | +[upstream]: https://github.com/NixOS/nix |
| 91 | +[website]: https://nixos.org |
| 92 | +[z2n]: https://zero-to-nix.com |
0 commit comments