Files
NixMachines/machines/universeair/configuration.nix
universelaptop 06b11be630 Add fonts
2024-01-30 12:43:34 -05:00

111 lines
2.7 KiB
Nix

{ config, pkgs, inputs, ... }: let
in
{
imports = [
# Install Apps Detactable by Spotlight
./app-fix.nix
# Tiling Window Manager
./yabai.nix
# Shortcuts babe, not Automator
./skhd.nix
];
nix.registry.nixpkgs.flake = inputs.nixpkgs;
nixpkgs.config.allowUnfree = true;
# Auto upgrade nix package and the daemon service.
services.nix-daemon.enable = true;
nix.package = pkgs.nixUnstable;
nix.settings.auto-optimise-store = false;
users.users.universelaptop = {
name = "universelaptop";
home = "/Users/universelaptop";
};
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
users.universelaptop = { pkgs, ... }: {
programs.direnv.enable = true;
programs.direnv.nix-direnv.enable = true;
programs.bash.enable = true;
programs.zsh = {
enable = true;
initExtra = ''
if [[ $(uname -m) == 'arm64' ]]; then
eval "$(/opt/homebrew/bin/brew shellenv)"
fi
'';
shellAliases = {
ssh = "kitty +kitten ssh";
sshu = "ssh universe";
};
};
home.stateVersion = "22.05";
};
};
fonts.fontDir.enable = true;
fonts.fonts = with pkgs; [
julia-mono
bqn386
];
environment.variables = {
EDITOR = "emacs";
};
environment.systemPackages = (with pkgs; [
mac-emacs
(aspellWithDicts (p: with p;[
en
en-computers
en-science
]))
pandoc
texlive.combined.scheme-full
wget
kitty
btop
cbqn-replxx
# Graphical Apps:
rectangle
tailscale
discord
slack
# TODO: Consider using Yabai??
]);
homebrew = {
# It is not installed by nix, for now, so manually install:
# https://brew.sh/
enable = true;
onActivation = {
cleanup = "uninstall";
};
# Graphical apps to install through homebrew instead of nixpkgs
casks = [
"firefox"
"nextcloud"
"tidal"
"bitwarden"
];
# Apps to install outside of nix for when wanting to test/run
# things that... aren't used by other people who use nix, like
# python apps (which is why poetry is there)
brews = [
"poetry"
];
};
# Create /etc/zshrc that loads the nix-darwin environment.
programs.bash.enable = true; # default shell on catalina
programs.zsh.enable = true; # default shell on catalina
# Used for backwards compatibility, please read the changelog before changing.
# $ darwin-rebuild changelog
system.stateVersion = 4;
}