54 lines
1.5 KiB
Nix
54 lines
1.5 KiB
Nix
{ pkgs, ... }: {
|
|
imports = [ ./homebrew.nix ./system.nix ];
|
|
|
|
networking.hostName = "poppy";
|
|
system.primaryUser = "michaotic";
|
|
system.stateVersion = 7;
|
|
|
|
nixpkgs.config.allowUnfree = true;
|
|
nix.enable = false;
|
|
|
|
users.users.michaotic = {
|
|
home = "/Users/michaotic";
|
|
shell = pkgs.zsh;
|
|
};
|
|
|
|
environment.systemPackages = [ pkgs.vim ];
|
|
|
|
# Apply default apps via duti on activation
|
|
system.activationScripts.defaultApps.text = ''
|
|
if [ -f "/Users/michaotic/.config/duti/config" ]; then
|
|
${pkgs.duti}/bin/duti -d /Users/michaotic/.config/duti/config || true
|
|
fi
|
|
'';
|
|
|
|
# Configure MarkEdit settings via jq
|
|
system.activationScripts.markeditSettings.text = let
|
|
settingsFile = "/Users/michaotic/Library/Containers/app.cyan.markedit/Data/Documents/settings.json";
|
|
jqBin = "${pkgs.jq}/bin/jq";
|
|
in ''
|
|
if [ -f "${settingsFile}" ]; then
|
|
tmp=/tmp/markedit-settings-$$.json
|
|
if ${jqBin} '. + {
|
|
"extension.markeditThemeCatppuccin": {
|
|
"enabledMode": "both",
|
|
"lightTheme": "latte",
|
|
"darkTheme": "mocha"
|
|
}
|
|
}' "${settingsFile}" > "$tmp" 2>/dev/null; then
|
|
cp "$tmp" "${settingsFile}"
|
|
chown michaotic:staff "${settingsFile}"
|
|
fi
|
|
rm -f "$tmp"
|
|
fi
|
|
'';
|
|
|
|
home-manager.users.michaotic = {
|
|
imports = [ ../../home/kitty.nix ];
|
|
programs.zsh.shellAliases = {
|
|
switch = "darwin-rebuild switch --flake .#poppy";
|
|
update = "nix flake update && darwin-rebuild switch --flake .#poppy";
|
|
cleanup = "nix-collect-garbage -d";
|
|
};
|
|
};
|
|
}
|