Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/pipelight/darkfi.nix
https://github.com/pipelight/darkfi.nix
Last synced: 21 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/pipelight/darkfi.nix
- Owner: pipelight
- Created: 2024-03-07T19:01:48.000Z (10 months ago)
- Default Branch: master
- Last Pushed: 2024-03-13T14:02:13.000Z (10 months ago)
- Last Synced: 2024-04-20T00:45:51.858Z (9 months ago)
- Language: Nix
- Size: 5.86 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Darkfi - Nixos impure flake
## Installation (impure)
This flake sticks to the initial design and uses Makefiles maintainedby the
DarkFi core team.Using nix builders would make the package evaluation pure, but would although
lead to duplicate and unevitably to an out of date flake.Make this flake pure
### Prerequisites
The flake buildPhases need network access that are by default disabled by nix.
You need to first *_relax_ nix build sandbox parameter to allow impure builds.
Either in your nixos configuration:
```nix
# configuration.nix
nix.settings.sandbox = "relaxed"
```or exceptionnaly via command-line as an argument of an installation command.
```sh
nix-env -i github:darkrenaissance/darki?dir=contrib/nix --no-sandbox
```### Declaration
Import it in your flake inputs.
```sh
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
darkfi.url = "github:pipelight/darkfi.nix";
};
```Add the packages to your environment or to a specific users.
```nix
environment.systemPackages = with pkgs; [
inputs.darkfi.packages.${system}.default
];
```## Enable background services
Add a user systemd unit with home-manager.
```nix
# home.nix
## Darkirc messaging background service
systemd.user.services."darkirc" = {
enable = true;
after = ["network.target"];
serviceConfig = {
ExecStart = "${darkfi}/bin/darkirc";
};
wantedBy = ["multi-user.target"];
};
```