mirror of
https://github.com/status-im/status-app.git
synced 2026-08-27 07:01:14 +00:00
Description
This folder contains configuration for Nix, a purely functional package manager used by the Status Go for its build process.
Prerequisites
Install Nix:
sh <(curl --proto '=https' --tlsv1.2 -L https://nixos.org/nix/install) --daemon
Install direnv:
brew install direnv # macOS
sudo apt install direnv # Ubuntu
sudo dnf install direnv # Fedora
Configuration
The main config file is nix/nix.conf and its main purpose is defining the binary caches which allow download of packages to avoid having to compile them yourself locally.
Shell
In order to access an interactive Nix shell a user should run nix develop.
But better way is to use direnv allow. So it will run a nix shell every time you enter the workdir.
It will also reload the shell in case of nix configuration changes.
Resources
You can learn more about Nix by watching these presentations:
- Nix Fundamentals (PDF, src)
- Nix in Status (PDF, src)