Merge branch 'm4'

This commit is contained in:
Charles Sirois 2025-06-05 09:43:07 -04:00
commit 4e7661a4c9
2 changed files with 99 additions and 53 deletions

View file

@ -1,83 +1,126 @@
{pkgs, inputs, system, ...}: { {
pkgs,
inputs,
system,
config,
...
}: let
my-emacs = pkgs.emacsNativeComp;
in {
nixpkgs.config.allowUnfree = true; nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
# terminal # terminal
alacritty
ranger ranger
(inputs.nixvim.packages.x86_64-darwin.default) (inputs.vimix.packages.${system}.default)
# nix # nix
home-manager home-manager
alejandra nix-output-monitor
nix-output-monitor
# work tool # work tool
git doppler
terraform docker
doppler colima
ngrok git
awscli2 gnupg
pgcli (pass.withExtensions (exts: [exts.pass-otp]))
# misc # emacs
ollama my-emacs
sl fd
newsboat ripgrep
(writeShellScriptBin "drs" '' (writeShellScriptBin "drs" ''
darwin-rebuild switch --flake ~/.config/nix-darwin darwin-rebuild switch --flake ~/.config/nixos
'') '')
]; ];
homebrew = { homebrew = {
enable = true; enable = true;
onActivation = { onActivation = {
autoUpdate = true; autoUpdate = true;
cleanup = "zap"; cleanup = "zap";
}; };
brews = [ brews = [
"emacs-plus@29" # doom emacs
]; "fontconfig"
];
casks = [ casks = [
# internet # internet
"qutebrowser" "spotify"
"firefox" "brave-browser"
"spotify" "qutebrowser"
"stremio"
# work # work
"slack" "slack"
"tunnelblick" "tunnelblick"
"dbeaver-community" "dbeaver-community"
"insomnia" "claude"
# 3D # doom emacs
"orcaslicer" "font-symbols-only-nerd-font"
"openscad" ];
};
# Utilities nix = {
"flameshot" # Necessary for using flakes on this system.
"pika" settings.experimental-features = "nix-command flakes";
]; extraOptions = ''
}; extra-platforms = x86_64-darwin aarm64-darwin
'';
# Necessary for using flakes on this system. };
nix.settings.experimental-features = "nix-command flakes";
# Create /etc/zshrc that loads the nix-darwin environment. # Create /etc/zshrc that loads the nix-darwin environment.
programs.zsh.enable = true; # default shell on catalina programs.zsh.enable = true; # default shell on catalina
programs.direnv.enable = true; programs.direnv.enable = true;
programs.gnupg.agent.enable = true;
services.yabai = { services.yabai = {
enable = true; enable = true;
}; };
services.skhd.enable = true; services.skhd.enable = true;
services.emacs = {
enable = true;
package = my-emacs;
};
# Used for backwards compatibility, please read the changelog before changing. # Used for backwards compatibility, please read the changelog before changing.
# $ darwin-rebuild changelog # $ darwin-rebuild changelog
system.stateVersion = 4; system.stateVersion = 4;
ids.gids.nixbld = 350;
system.defaults.dock = {
autohide = true;
persistent-apps = [];
show-recents = false;
static-only = true;
tilesize = 32;
};
system.defaults.menuExtraClock = {
Show24Hour = true;
};
launchd.user.agents.remap-keys = {
serviceConfig = {
ProgramArguments = [
"/usr/bin/hidutil"
"property"
"--set"
'' {
"UserKeyMapping":[
{"HIDKeyboardModifierMappingSrc":0x700000039,"HIDKeyboardModifierMappingDst":0x7000000E7}
]
}''
];
RunAtLoad = true;
};
};
# The platform the configuration will be used on. # The platform the configuration will be used on.
nixpkgs.hostPlatform = system; nixpkgs.hostPlatform = system;

View file

@ -5,6 +5,7 @@
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
nix-darwin.url = "github:LnL7/nix-darwin"; nix-darwin.url = "github:LnL7/nix-darwin";
nixvim.url = "github:Polensky/nixvim"; nixvim.url = "github:Polensky/nixvim";
vimix.url = "github:Polensky/vimix";
sops-nix.url = "github:Mic92/sops-nix"; sops-nix.url = "github:Mic92/sops-nix";
}; };
@ -60,8 +61,10 @@
}; };
"mbp-m4" = nix-darwin.lib.darwinSystem { "mbp-m4" = nix-darwin.lib.darwinSystem {
modules = [./devices/macbook/configuration.nix]; modules = [./devices/macbook/configuration.nix];
specialArgs = {inherit inputs;}; specialArgs = {
system = "aarch64-darwin"; inherit inputs;
system = "aarch64-darwin";
};
}; };
}; };
}; };