Skip to content

Update frontpage #1110

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 8 commits into
base: master
Choose a base branch
from
Draft
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
47 changes: 29 additions & 18 deletions source/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,24 +50,35 @@ Explanations of history and ideas in the Nix ecosystem
:::
::::

## What can you do with Nix?

The following list illustrates some of what can be achieved with the Nix ecosystem:

- {ref}`Reproducible development environments <ad-hoc-envs>`.
- Easy installation of software over URLs.
- Easy transfer of software environments between computers.
- {ref}`Declarative specification of Linux machines <deploy-nixos-using-terraform>`.
- {ref}`Reproducible integration testing using virtual machines <integration-testing-vms>`.
- Avoidance of version conflicts with already installed software.
- Installing software from source code.
- {ref}`Transparent build caching using binary caches <github-actions>`.
- Strong support for software auditability.
- {ref}`First-class cross compilation support <cross-compilation>`.
- Remote builds.
- Remote deployments.
- Atomic upgrades and rollbacks.

## What is Nix?

[Nix](https://github.com/NixOS/nix) allows treating Unix processes as pure functions over file systems.

It is the basis of a growing ecosystem of tools that facilitate repeatable results in software development:
- [Nixpkgs](https://github.com/nixos/nixpkgs) is [the largest, most up-to-date software repository in the world](https://repology.org/repositories/graphs).
- [NixOS](https://github.com/NixOS/nixpkgs/tree/master/nixos) is a Linux distribution that can be configured fully declaratively.

## What can you do with the Nix ecosystem?

- Build **executables** with Nix
Copy link
Collaborator

@fricklerhandwerk fricklerhandwerk Mar 14, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Build **executables** with Nix
- Programmatically build linked directories of plain or executable files with Nix

This is more right but still a mouthful

- Develop software using **libraries or tools** from Nixpkgs
- Configure **services** and deploy them to machines running NixOS
Comment on lines +64 to +65
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Develop software using **libraries or tools** from Nixpkgs
- Configure **services** and deploy them to machines running NixOS
- Develop multilingual software using libraries or tools from Nixpkgs
- Declaratively configure applications with NixOS


## What else can you do with Nix?

The following list illustrates some examples of what can be achieved with the Nix ecosystem:
- {ref}`Reproducible development environments <ad-hoc-envs>`
- Easy installation of software over URLs and from source code
- Easy transfer of software environments between computers
- {ref}`Declarative specification of Linux machines <deploy-nixos-using-terraform>`
- {ref}`Reproducible integration testing using virtual machines <integration-testing-vms>`
- Avoidance of version conflicts with already installed software
- {ref}`Transparent build caching using binary caches <github-actions>`
- Strong support for software auditability
- {ref}`First-class cross compilation support <cross-compilation>`
- Remote builds
- Remote deployments
- Atomic upgrades and rollbacks

## Who is Nix for?

Expand Down
Loading