1
0
Fork 0
mirror of https://github.com/LnL7/nix-darwin.git synced 2025-03-06 16:57:08 +00:00
nix-darwin/pkgs/darwin-installer/configuration.nix

64 lines
2 KiB
Nix
Raw Normal View History

2018-01-13 15:57:10 +01:00
{ config, lib, pkgs, ... }:
with lib;
{
imports = [ <user-darwin-config> ];
2018-01-16 23:51:39 +01:00
# NOTE: don't set this outside of the installer.
2018-01-14 17:18:10 +01:00
users.nix.configureBuildUsers = true;
users.knownGroups = [ "nixbld" ];
users.knownUsers = [ "nixbld1" "nixbld2" "nixbld3" "nixbld4" "nixbld5" "nixbld6" "nixbld7" "nixbld8" "nixbld9" "nixbld10" ];
2018-01-13 15:57:10 +01:00
system.activationScripts.preUserActivation.text = mkBefore ''
PATH=/nix/var/nix/profiles/default/bin:$PATH
darwinPath=$(NIX_PATH=${concatStringsSep ":" config.nix.nixPath}:$HOME/.nix-defexpr/channels:$NIX_PATH nix-instantiate --eval -E '<darwin>' 2> /dev/null) || true
2018-01-13 15:57:10 +01:00
if ! test -e "$darwinPath"; then
if test -t 1; then
read -p "Would you like to manage <darwin> with nix-channel? [y/n] " i
fi
case "$i" in
y|Y)
nix-channel --add https://github.com/LnL7/nix-darwin/archive/master.tar.gz darwin
nix-channel --update
;;
esac
fi
if ! test -L /etc/bashrc && ! grep -q /etc/static/bashrc /etc/bashrc; then
if test -t 1; then
read -p "Would you like to load darwin configuration in /etc/bashrc? [y/n] " i
fi
case "$i" in
y|Y)
echo 'if test -e /etc/static/bashrc; then . /etc/static/bashrc; fi' | sudo tee -a /etc/bashrc
;;
esac
fi
if ! test -L /etc/profile && grep -q 'etc/profile.d/nix-daemon.sh' /etc/profile; then
if test -t 1; then
read -p "Would you like to remove nix-daemon.sh configuration in /etc/profile? [y/n] " i
fi
case "$i" in
y|Y)
sudo patch -d /etc -p1 < '${./profile.patch}'
;;
esac
fi
2018-01-13 22:32:47 +01:00
if ! test -L /run; then
2018-01-14 12:44:50 +01:00
echo "setting up /run..."
if test -t 1; then
read -p "Would you like to create /run? [y/n] " i
fi
case "$i" in
y|Y)
sudo ln -sfn private/var/run /run
;;
esac
2018-01-13 22:32:47 +01:00
fi
'';
2018-01-13 15:57:10 +01:00
}