about summary refs log tree commit diff
path: root/nixos/kompakt
Commit message (Expand)AuthorAgeFilesLines
* feat(nixos/kompakt): add basic optionssefidel2023-03-081-2/+14
* feat: use age for sopssefidel2023-02-201-35/+22
* feat(nixos/kompakt): set iwd to persist between rebootssefidel2023-02-151-0/+1
* feat(nixos/kompakt): enable GPU & backlight controlsefidel2023-02-151-0/+10
* feat(nixos/kompakt): use flakes for asahi-related dependenciessefidel2023-02-153-3/+8
* feat(nixos/kompakt): use direct path for SSHsefidel2023-02-151-1/+11
* feat(nixos/kompakt): change pubkeysefidel2023-02-151-26/+26
* feat(nixos/kompakt): setup user environmentsefidel2023-02-151-0/+70
* fix(nixos/kompakt): set /persist neededForBootsefidel2023-02-151-0/+2
* feat(nixos/alpha,kompakt): add git to systemPackagessefidel2023-02-151-0/+4
* fix(nixos/kompakt): add lib as argsefidel2023-02-151-1/+1
* feat(nixos/kompakt): remove comments & formatsefidel2023-02-152-75/+18
* feat(nixos/kompakt): activate volatile rootsefidel2023-02-152-8/+68
* fix(nixos/kompakt): include peripheral firmwaressefidel2023-02-153-0/+6
* feat(nixos): init kompaktsefidel2023-02-142-0/+170
font-weight: bold } /* Literal.Number.Bin */ .highlight .mf { color: #0000DD; font-weight: bold } /* Literal.Number.Float */ .highlight .mh { color: #0000DD; font-weight: bold } /* Literal.Number.Hex */ .highlight .mi { color: #0000DD; font-weight: bold } /* Literal.Number.Integer */ .highlight .mo { color: #0000DD; font-weight: bold } /* Literal.Number.Oct */ .highlight .sa { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Affix */ .highlight .sb { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Backtick */ .highlight .sc { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Char */ .highlight .dl { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Delimiter */ .highlight .sd { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Doc */ .highlight .s2 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Double */ .highlight .se { color: #0044dd; background-color: #fff0f0 } /* Literal.String.Escape */ .highlight .sh { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Heredoc */ .highlight .si { color: #3333bb; background-color: #fff0f0 } /* Literal.String.Interpol */ .highlight .sx { color: #22bb22; background-color: #f0fff0 } /* Literal.String.Other */ .highlight .sr { color: #008800; background-color: #fff0ff } /* Literal.String.Regex */ .highlight .s1 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Single */ .highlight .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */ .highlight .bp { color: #003388 } /* Name.Builtin.Pseudo */ .highlight .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */ .highlight .vc { color: #336699 } /* Name.Variable.Class */ .highlight .vg { color: #dd7700 } /* Name.Variable.Global */ .highlight .vi { color: #3333bb } /* Name.Variable.Instance */ .highlight .vm { color: #336699 } /* Name.Variable.Magic */ .highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */
{ config, pkgs, lib, ... }:

{
  nix = {
    settings.substituters = [
      "https://cache.nixos.org/"
    ];
    settings.trusted-public-keys = [
      "cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
    ];

    settings.trusted-users = [
      "@admin"
    ];

    settings.auto-optimise-store = lib.mkDefault true;
    configureBuildUsers = true;
    gc.automatic = lib.mkDefault true;
    gc.options = lib.mkDefault "--delete-older-than 10d";
    extraOptions = ''
      experimental-features = nix-command flakes
      extra-platforms = x86_64-darwin aarch64-darwin
    '';
  };

  # List packages installed in system profile. To search by name, run:
  # $ nix-env -qaP | grep wget
  environment.systemPackages =
    [
      pkgs.vim
    ];

  # Use a custom configuration.nix location.
  # $ darwin-rebuild switch -I darwin-config=$HOME/.config/nixpkgs/darwin/configuration.nix
  # environment.darwinConfig = "$HOME/.config/nixpkgs/darwin/configuration.nix";

  # Auto upgrade nix package and the daemon service.
  services.nix-daemon.enable = true;
  # nix.package = pkgs.nix;

  users.users.sefidel = {
    name = "sefidel";
    home = "/Users/sefidel";
  };

  # Create /etc/zshrc that loads the nix-darwin environment.
  programs.zsh.enable = true; # default shell on catalina
  # programs.fish.enable = true;

  # Make applications pop up in finder/spotlight
  system.activationScripts.applications.text = pkgs.lib.mkForce (
    ''
      echo "setting up ~/Applications..." >&2
      rm -rf ~/Applications/Nix\ Apps
      mkdir -p ~/Applications/Nix\ Apps
      for app in $(find ${config.system.build.applications}/Applications -maxdepth 1 -type l); do
        src="$(/usr/bin/stat -f%Y "$app")"
        cp -r "$src" ~/Applications/Nix\ Apps
      done
    ''
  );

  # Used for backwards compatibility, please read the changelog before changing.
  # $ darwin-rebuild changelog
  system.stateVersion = 4;
}