dotfiles/modules/base.nix

55 lines
1.4 KiB
Nix

{ pkgs, lib, config, inputs, ... }:
let
laptop = builtins.readFile "/etc/hostname" == ''
syl
'';
in {
imports = [ ./cachix.nix ];
nix = {
extraOptions = "experimental-features = nix-command flakes";
gc = {
automatic = true;
dates = "Mon 10:00";
options = "--delete-older-than 20d";
};
settings = { auto-optimise-store = true; };
nixPath = [ "nixpkgs=${inputs.nixpkgs}" ];
};
# nixpkgs.config.allowUnFree = true;
# pkgs.config.allowUnfree = true;
system.autoUpgrade = {
enable = true;
dates = "11:00";
allowReboot = false;
flake = "${config.users.users.chris.home}/${if laptop then ".dotfiles" else "conf"}";
flags = [ "--update-input" "nixpkgs" "--commit-lock-file" ];
};
services.murmur = {
enable = true;
bonjour = true;
openFirewall = true;
};
# Use the systemd-boot EFI boot loader.
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
i18n.defaultLocale = "en_US.UTF-8";
time.timeZone = "America/Chicago";
networking.networkmanager.enable =
true; # Easiest to use and most distros use this by default.
# Set default shell to be dash for speed
# Apparently this is bad because a lot of nix relies on bash
# environment.binsh = "${pkgs.dash}/bin/dash";
environment.homeBinInPath = true;
programs.fish.enable = true;
programs.zsh.enable = true;
}