summaryrefslogtreecommitdiff
path: root/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'default.nix')
-rw-r--r--default.nix48
1 files changed, 47 insertions, 1 deletions
diff --git a/default.nix b/default.nix
index aedf4a0..42b6c3a 100644
--- a/default.nix
+++ b/default.nix
@@ -9,8 +9,54 @@ let
vm = full.vm;
};
buildHaskellApp = import ./com/simatime/buildHaskellApp.nix nixpkgs;
+ nixos-mailserver = builtins.fetchTarball {
+ url = "https://gitlab.com/simple-nixos-mailserver/nixos-mailserver/-/archive/v2.2.1/nixos-mailserver-v2.2.1.tar.gz";
+ sha256 = "03d49v8qnid9g9rha0wg2z6vic06mhp0b049s3whccn1axvs2zzx";
+ };
in {
- com.simatime = import ./com/simatime.nix { inherit buildNixOS; };
+ com.simatime = buildNixOS {
+ system = "x86_64-linux";
+ configuration = {
+ imports = [
+ ./com/simatime/hardware.nix
+ ./com/simatime/networking.nix
+ # common infra
+ ./com/simatime/users.nix
+ ./com/simatime/packages.nix
+ # configured modules
+ ./com/simatime/git.nix
+ ./com/simatime/mail.nix
+ ./com/simatime/web.nix
+ ./com/simatime/znc.nix
+ # third party
+ nixos-mailserver
+ ];
+ # TODO(bsima): move more stuff here to a common module
+ nixpkgs.config.allowUnfree = true;
+ programs.mosh = {
+ enable = true;
+ withUtempter = true;
+ };
+ services.openssh = {
+ enable = true;
+ passwordAuthentication = false;
+ };
+ security.sudo.wheelNeedsPassword = true;
+ boot.cleanTmpDir = true;
+ };
+ } // {
+ dev = buildNixOS {
+ system = "x86_64-linux";
+ configuration = {
+ imports = [
+ ./com/simatime/users.nix
+ ./com/simatime/packages.nix
+ ./com/simatime/dev/hardware.nix
+ ./com/simatime/dev/configuration.nix
+ ];
+ };
+ };
+ };
com.influencedbybooks = buildNixOS {
system = "x86_64-linux";
configuration = {