{ config, pkgs, inputs, ... }: { imports = [ inputs.sops-nix.homeManagerModules.sops inputs.steam-config-nix.homeModules.default inputs.catppuccin.homeManagerModules.catppuccin # inputs.unified-router-mcp.homeManagerModules.default ./modules/home # Import all Home Manager modules ./hosts/nixos/home-modules.nix # Host-specific module configuration ./home/fastfetch.nix ./home/vscode.nix ./home/kitty.nix ./home/steam.nix ./home/mangohud.nix ./home/starship.nix ]; home.packages = [ pkgs.mimalloc (pkgs.writeShellScriptBin "opencode" '' export OPENAI_BASE_URL="https://api.ashisgreat.xyz/v1" export OPENAI_API_KEY="$(cat ${config.sops.secrets.master_api_key.path})" export OPENCODE_DISABLE_DEFAULT_PLUGINS=true # Ensure config directory exists mkdir -p $HOME/.config/opencode # Force remove config.json if it is a symlink to ensure we can write to it if [ -L $HOME/.config/opencode/config.json ]; then rm -f $HOME/.config/opencode/config.json fi # Validate permissions and force write correct config # We verify if we can write to it, if not (e.g. read-only file), we remove it if [ -f $HOME/.config/opencode/config.json ] && [ ! -w $HOME/.config/opencode/config.json ]; then rm -f $HOME/.config/opencode/config.json fi # Always overwrite config.json to ensure correct settings cat > $HOME/.config/opencode/config.json <