mirror of
https://github.com/nmasur/dotfiles
synced 2026-07-26 06:48:35 +00:00
Compare commits
4
Commits
396337f74d
...
27917ffede
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
27917ffede | ||
|
|
73b62e0907 | ||
|
|
b25cfe6877 | ||
|
|
d162df2515 |
@@ -27,6 +27,7 @@ rec {
|
|||||||
common.enable = true;
|
common.enable = true;
|
||||||
darwin-base.enable = true;
|
darwin-base.enable = true;
|
||||||
darwin-gaming.enable = true;
|
darwin-gaming.enable = true;
|
||||||
|
llm-development.enable = true;
|
||||||
power-user.enable = true;
|
power-user.enable = true;
|
||||||
work.enable = true;
|
work.enable = true;
|
||||||
experimental.enable = true;
|
experimental.enable = true;
|
||||||
|
|||||||
@@ -28,6 +28,7 @@ rec {
|
|||||||
nmasur.profiles = {
|
nmasur.profiles = {
|
||||||
common.enable = true;
|
common.enable = true;
|
||||||
linux-base.enable = true;
|
linux-base.enable = true;
|
||||||
|
llm-development.enable = true;
|
||||||
power-user.enable = true;
|
power-user.enable = true;
|
||||||
};
|
};
|
||||||
nmasur.presets.programs.helix.enable = true;
|
nmasur.presets.programs.helix.enable = true;
|
||||||
|
|||||||
@@ -26,6 +26,7 @@ rec {
|
|||||||
nmasur.profiles = {
|
nmasur.profiles = {
|
||||||
common.enable = true;
|
common.enable = true;
|
||||||
linux-base.enable = true;
|
linux-base.enable = true;
|
||||||
|
llm-development.enable = true;
|
||||||
power-user.enable = true;
|
power-user.enable = true;
|
||||||
};
|
};
|
||||||
home.stateVersion = "23.05";
|
home.stateVersion = "23.05";
|
||||||
|
|||||||
@@ -30,6 +30,7 @@ rec {
|
|||||||
linux-base.enable = true;
|
linux-base.enable = true;
|
||||||
linux-gui.enable = true;
|
linux-gui.enable = true;
|
||||||
linux-gaming.enable = true;
|
linux-gaming.enable = true;
|
||||||
|
llm-development.enable = true;
|
||||||
power-user.enable = true;
|
power-user.enable = true;
|
||||||
developer.enable = true;
|
developer.enable = true;
|
||||||
experimental.enable = true;
|
experimental.enable = true;
|
||||||
|
|||||||
+9
-11
@@ -179,22 +179,20 @@ lib
|
|||||||
inputs.darwin.lib.darwinSystem {
|
inputs.darwin.lib.darwinSystem {
|
||||||
inherit system specialArgs;
|
inherit system specialArgs;
|
||||||
modules = [
|
modules = [
|
||||||
inputs.home-manager.darwinModules.home-manager
|
|
||||||
inputs.mac-app-util.darwinModules.default
|
inputs.mac-app-util.darwinModules.default
|
||||||
{
|
{
|
||||||
imports = (nixFiles ../platforms/nix-darwin);
|
imports = (nixFiles ../platforms/nix-darwin);
|
||||||
nixpkgs.pkgs = pkgsBySystem.${system};
|
nixpkgs.pkgs = pkgsBySystem.${system};
|
||||||
}
|
}
|
||||||
module
|
# Home Manager is intentionally NOT activated here. It is managed
|
||||||
{
|
# standalone via `nh home switch` (see homeConfigurations, extracted
|
||||||
home-manager = {
|
# from the host module's `home-manager.users`). Strip that attr so
|
||||||
extraSpecialArgs = {
|
# darwin-rebuild doesn't also activate a second, divergent HM
|
||||||
inherit colorscheme;
|
# generation with different store paths (useUserPackages puts packages
|
||||||
}
|
# in /etc/profiles/per-user vs. ~/.nix-profile standalone) -- that
|
||||||
// specialArgs;
|
# mismatch broke the prompt after every darwin-rebuild until the next
|
||||||
}
|
# `nh home switch`.
|
||||||
// homeModule.home-manager;
|
(builtins.removeAttrs module [ "home-manager" ])
|
||||||
}
|
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -18,16 +18,16 @@ in
|
|||||||
ca = "cargo";
|
ca = "cargo";
|
||||||
};
|
};
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = [
|
||||||
gcc
|
pkgs.gcc
|
||||||
rustc
|
pkgs.rustc
|
||||||
cargo
|
pkgs.cargo
|
||||||
cargo-watch
|
pkgs.stable.cargo-watch
|
||||||
clippy
|
pkgs.clippy
|
||||||
rustfmt
|
pkgs.rustfmt
|
||||||
pkg-config
|
pkgs.pkg-config
|
||||||
openssl
|
pkgs.openssl
|
||||||
rust-analyzer
|
pkgs.rust-analyzer
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -15,10 +15,21 @@ in
|
|||||||
|
|
||||||
config = lib.mkIf (cfg.enable && (pkgs.stdenv.isDarwin || config.services.dunst.enable)) {
|
config = lib.mkIf (cfg.enable && (pkgs.stdenv.isDarwin || config.services.dunst.enable)) {
|
||||||
home.packages = [ pkgs.noti ];
|
home.packages = [ pkgs.noti ];
|
||||||
programs.fish.shellAbbrs = {
|
programs.fish = {
|
||||||
|
shellAbbrs = {
|
||||||
# Add noti for ghpr in Darwin
|
# Add noti for ghpr in Darwin
|
||||||
ghpr = lib.mkForce "gh pr create && sleep 3 && noti gh run watch";
|
ghpr = lib.mkForce "gh pr create && sleep 3 && noti gh run watch";
|
||||||
grw = lib.mkForce "noti gh run watch";
|
grw = lib.mkForce "noti gh run watch";
|
||||||
};
|
};
|
||||||
|
functions = {
|
||||||
|
gh-run = {
|
||||||
|
body =
|
||||||
|
lib.mkForce # fish
|
||||||
|
''
|
||||||
|
${lib.getExe pkgs.zellij} action new-pane --start-suspended -- noti gh run watch
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -109,6 +109,10 @@ in
|
|||||||
|
|
||||||
settings = {
|
settings = {
|
||||||
default_mode = "locked";
|
default_mode = "locked";
|
||||||
|
# Spawn fish directly instead of trusting $SHELL, which inherits the
|
||||||
|
# macOS login shell. On darwin that login shell is no longer managed by
|
||||||
|
# nix-darwin, so $SHELL can point at a stale /run/current-system path.
|
||||||
|
default_shell = lib.getExe pkgs.fish;
|
||||||
# default_layout = "compact-top";
|
# default_layout = "compact-top";
|
||||||
# Remove border
|
# Remove border
|
||||||
pane_frames = false;
|
pane_frames = false;
|
||||||
|
|||||||
@@ -0,0 +1,26 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.nmasur.profiles.llm-development;
|
||||||
|
in
|
||||||
|
|
||||||
|
{
|
||||||
|
|
||||||
|
options.nmasur.profiles.llm-development.enable = lib.mkEnableOption "LLM coding tools";
|
||||||
|
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
|
||||||
|
home.packages = [
|
||||||
|
|
||||||
|
pkgs.pi-coding-agent # AI LLM Agent
|
||||||
|
|
||||||
|
];
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
||||||
@@ -12,12 +12,9 @@ in
|
|||||||
options.nmasur.presets.programs._1password.enable = lib.mkEnableOption "1Password password manager";
|
options.nmasur.presets.programs._1password.enable = lib.mkEnableOption "1Password password manager";
|
||||||
|
|
||||||
config = lib.mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
allowUnfreePackages = [
|
# Unfree packages are already permitted via the shared nixpkgs instance
|
||||||
"1password"
|
# created in lib/default.nix (config.allowUnfree = true). Setting
|
||||||
"_1password-gui"
|
# nixpkgs.config here would conflict with nixpkgs.pkgs being set externally.
|
||||||
"1password-cli"
|
|
||||||
];
|
|
||||||
|
|
||||||
programs._1password.enable = true;
|
programs._1password.enable = true;
|
||||||
programs._1password-gui = {
|
programs._1password-gui = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ in
|
|||||||
nmasur.presets = {
|
nmasur.presets = {
|
||||||
programs = {
|
programs = {
|
||||||
_1password.enable = lib.mkDefault true;
|
_1password.enable = lib.mkDefault true;
|
||||||
# fish.enable = lib.mkDefault true;
|
fish.enable = lib.mkDefault true;
|
||||||
# homebrew.enable = lib.mkDefault true;
|
# homebrew.enable = lib.mkDefault true;
|
||||||
};
|
};
|
||||||
services = {
|
services = {
|
||||||
|
|||||||
Reference in New Issue
Block a user