archbox/NIXOS_INSTALL.md

62 lines
1.6 KiB
Markdown
Raw Normal View History

2021-05-17 07:41:58 +00:00
# Installation (NixOS)
## Install methods
### Declarative Nix
To install with nix, create a `.nix` file like this and import it to your `configuration.nix` :
```nix
{ config, pkgs, ... }:
let
archbox = pkgs.stdenv.mkDerivation rec {
name = "archbox";
src = pkgs.fetchFromGitHub {
2021-05-17 13:28:31 +00:00
owner = "lemniskett";
2021-05-17 07:41:58 +00:00
repo = "archbox";
rev = "rev_here";
sha256 = "rev_sha256_here";
};
sourceRoot = ".";
installPhase = ''
mkdir -p $out
cd source
export FORCE_INSTALL_CONFIG=1
export ETC_DIR=$out/etc
export PREFIX=$out
export ARCHBOX_USER=your_user_here
export MOUNT_RUN=no
${pkgs.bash}/bin/bash install.sh
'';
};
in
{
environment.systemPackages = [ archbox ];
environment.etc = {
"archbox.conf" = {
source = "${archbox}/etc/archbox.conf";
};
};
}
```
2021-05-17 07:44:51 +00:00
Replace `your_user_here`, `rev_here`, and `rev_sha256_here`. to get rev and sha256 you can do :
```sh
nix-shell -p nix-prefetch-git
nix-prefetch-git --url https://github.com/lemniskett/archbox.git
```
2021-05-17 07:41:58 +00:00
Configuration can be done by modifying `installPhase` e.g. :
```sh
mkdir -p $out
cd source
export FORCE_INSTALL_CONFIG=1
export ETC_DIR=$out/etc
export PREFIX=$out
export ARCHBOX_USER=lemni
export MOUNT_RUN=no
export ENV_VAR="TERM=foot"
export SHARED_FOLDER=( /home /var/www )
${pkgs.bash}/bin/bash install.sh
```
### Regular Installation
See [INSTALL.md](INSTALL.md)
## Issues
See [issues](https://github.com/lemniskett/archbox/#nixos-specific-issues)