Make sourcing profile optional

This commit is contained in:
Martin Pander
2026-02-07 15:02:08 +01:00
parent 84ad11d543
commit 28f2042ad0
4 changed files with 100 additions and 108 deletions

View File

@@ -19,25 +19,6 @@ This file tracks remaining tasks and known issues for the NixOS configuration.
## Medium Priority ## Medium Priority
### Custom Packages
The following packages need to be integrated or replaced:
- [ ] **claude-code**
- Check if available in nixpkgs
- If custom: create derivation in `packages/claude-code.nix`
- Or use alternative package manager (npm, pip, cargo)
- [ ] **opencode**
- Check if available in nixpkgs
- If custom: create derivation in `packages/opencode.nix`
- Or use alternative package manager
- [ ] **gemini-cli**
- Check if available in nixpkgs
- If custom: create derivation in `packages/gemini-cli.nix`
- Or use alternative package manager
### Tmux Configuration ### Tmux Configuration
- [ ] Update note popup keybindings (C-n, C-p) with correct NixOS paths - [ ] Update note popup keybindings (C-n, C-p) with correct NixOS paths
@@ -101,16 +82,16 @@ initLua = builtins.concatStringsSep "\n" [
### Profile Loading ### Profile Loading
The shell configuration includes: The shell configuration is now configurable via `dot.sh.sourceProfile`:
```nix ```nix
profileExtra = '' profileExtra = lib.mkIf cfg.sourceProfile ''
source $HOME/.profile source $HOME/.profile
''; '';
``` ```
**Status**: Will fail silently if `~/.profile` doesn't exist **Status**: Disabled by default. Only enabled for work host.
**Action**: Either create `~/.profile` or remove this line if not needed **Action**: Verify `~/.profile` exists on hosts where `dot.sh.sourceProfile = true` is set.
## Testing Checklist ## Testing Checklist

View File

@@ -24,5 +24,9 @@
services.openssh.enable = true; services.openssh.enable = true;
environment.systemPackages = [
pkgs.ghostty.terminfo
];
system.stateVersion = "25.11"; system.stateVersion = "25.11";
} }

View File

@@ -14,8 +14,6 @@
home.stateVersion = "23.11"; home.stateVersion = "23.11";
programs.zsh.profileExtra = '' dot.sh.sourceProfile = true;
source $HOME/.profile
'';
} }

View File

@@ -1,6 +1,14 @@
{ config, pkgs, lib, ... }: { config, pkgs, lib, ... }:
let
cfg = config.dot.sh;
in
{ {
options.dot.sh = {
sourceProfile = lib.mkEnableOption "sourcing of $HOME/.profile in zsh profileExtra";
};
config = {
programs.zsh = { programs.zsh = {
enable = true; enable = true;
enableCompletion = true; enableCompletion = true;
@@ -52,7 +60,7 @@
unsetopt beep unsetopt beep
''; '';
profileExtra = '' profileExtra = lib.mkIf cfg.sourceProfile ''
source $HOME/.profile source $HOME/.profile
''; '';
}; };
@@ -96,4 +104,5 @@
home.shellAliases = { home.shellAliases = {
lst = "lsd --tree"; lst = "lsd --tree";
}; };
};
} }