summaryrefslogtreecommitdiff
path: root/machines/helium.nix
diff options
context:
space:
mode:
Diffstat (limited to 'machines/helium.nix')
-rw-r--r--machines/helium.nix118
1 files changed, 118 insertions, 0 deletions
diff --git a/machines/helium.nix b/machines/helium.nix
new file mode 100644
index 0000000..8bbeebc
--- /dev/null
+++ b/machines/helium.nix
@@ -0,0 +1,118 @@
+{ config, lib, pkgs, ... }:
+
+{
+
+ networking = {
+ hostName = "helium";
+ networkmanager.enable = true;
+ };
+
+ time.timeZone = "America/Los_Angeles";
+
+ environment.systemPackages = with pkgs; [
+ wget
+ vnstat
+ ];
+
+ fonts.fonts = with pkgs; [
+ google-fonts mononoki source-code-pro fantasque-sans-mono hack-font
+ fira fira-code fira-code-symbols
+ ];
+
+ nixpkgs = {
+ config = {
+ allowUnfree = true;
+ allowBroken = true;
+ };
+ };
+
+ hardware = {
+ opengl.enable = true;
+ pulseaudio = {
+ enable = true;
+ extraConfig = ''
+ load-module module-loopback
+ '';
+ };
+ };
+
+ programs = {
+ bash.enableCompletion = true;
+ command-not-found.enable = true;
+ gnupg.agent = {
+ enable = true;
+ enableSSHSupport = true;
+ };
+ mosh.enable = true;
+ };
+
+ services = {
+ pcscd = {
+ enable = true;
+ };
+
+ fractalart = {
+ enable = true;
+ };
+
+ logind = {
+ lidSwitch = "suspend";
+ extraConfig = "IdleAction=lock";
+ };
+
+ printing.enable = true;
+
+ xserver = {
+ enable = true;
+ layout = "us";
+ libinput.enable = true;
+
+ displayManager.sddm.enable = true;
+
+ desktopManager = {
+ plasma5.enable = true;
+ xterm.enable = true;
+ };
+ };
+
+ vnstat.enable = true;
+
+ # security stuff
+ fail2ban.enable = false;
+ clamav = {
+ daemon.enable = false;
+ updater.enable = false;
+ };
+ };
+
+ # Use the systemd-boot EFI boot loader.
+ boot.loader.systemd-boot.enable = true;
+ boot.loader.efi.canTouchEfiVariables = true;
+
+ powerManagement.enable = true;
+
+ nix = {
+ gc = {
+ automatic = true;
+ dates = "03:15";
+ };
+ binaryCaches = [ "https://cache.nixos.org/" ];
+ nixPath = [
+ "nixpkgs=/nix/var/nix/profiles/per-user/root/channels/nixos/nixpkgs"
+ "nixos-config=/etc/nixos/configuration.nix"
+ "/nix/var/nix/profiles/per-user/root/channels"
+ ];
+ extraOptions = ''
+ gc-keep-outputs = true
+ gc-keep-derivations = true
+ '';
+ };
+
+ # This value determines the NixOS release with which your system is to be
+ # compatible, in order to avoid breaking some software such as database
+ # servers. You should change this only after NixOS release notes say you
+ # should.
+ system.stateVersion = "19.03"; # Did you read the comment?
+ system.autoUpgrade.enable = true;
+
+}