Initial commit: homelab infrastructure wiki
- Full Obsidian vault content - Host configs (ice, grizzley, ubuntu, proxmox, truenas, panda, hyte) - Media stack documentation - Traefik HA setup - Automation scripts - Bachelor party planning
This commit is contained in:
94
homelab/raw/articles/forge/reference/docs-forge-config.md
Normal file
94
homelab/raw/articles/forge/reference/docs-forge-config.md
Normal file
@@ -0,0 +1,94 @@
|
||||
---
|
||||
type: agent-doc
|
||||
agent: ForgeCode
|
||||
source: https://forgecode.dev/docs/forge-config/
|
||||
scraped: 2026-04-28T21:02:35.924185+00:00
|
||||
content_hash: f14952b2
|
||||
---
|
||||
# $FORGE_CONFIG
|
||||
|
||||
By default, ForgeCode keeps its configuration at ~/forge/ on macOS/Linux and %USERPROFILE%\forge on Windows. That stops working when you want the config in a dotfiles repo, on a different volume, or switched per environment.
|
||||
|
||||
FORGE_CONFIG points ForgeCode at a different directory.
|
||||
|
||||
## What It Controls
|
||||
|
||||
When FORGE_CONFIG is unset, ForgeCode reads from ~/forge/.forge.toml.
|
||||
|
||||
Set it to a directory path and ForgeCode uses that path instead:
|
||||
|
||||
```
|
||||
export FORGE_CONFIG=~/.config/forgecode
|
||||
```
|
||||
|
||||
ForgeCode will look for ~/.config/forgecode/.forge.toml. The directory must exist. If .forge.toml is missing inside, ForgeCode starts with defaults.
|
||||
|
||||
## When to Change It
|
||||
|
||||
Dotfiles repo:
|
||||
|
||||
```
|
||||
export FORGE_CONFIG=~/.config/forgecode
|
||||
```
|
||||
|
||||
Multiple environments — switch configs for work vs personal:
|
||||
|
||||
```
|
||||
export FORGE_CONFIG=~/.config/forgecode-work
|
||||
```
|
||||
|
||||
Different volume — home directory is full or slow:
|
||||
|
||||
```
|
||||
export FORGE_CONFIG=/data/forgecode
|
||||
```
|
||||
|
||||
## Setting It
|
||||
|
||||
~/.env — ForgeCode-only, persistent:
|
||||
|
||||
```
|
||||
FORGE_CONFIG=~/.config/forgecode
|
||||
```
|
||||
|
||||
~/.zshrc — system-wide, persistent:
|
||||
|
||||
```
|
||||
export FORGE_CONFIG=~/.config/forgecode
|
||||
```
|
||||
|
||||
Reload after editing: source ~/.zshrc
|
||||
|
||||
Current session — temporary:
|
||||
|
||||
```
|
||||
export FORGE_CONFIG=~/test-config
|
||||
```
|
||||
|
||||
## Verifying the Change
|
||||
|
||||
Check the variable:
|
||||
|
||||
```
|
||||
echo $FORGE_CONFIG
|
||||
```
|
||||
|
||||
Then run :config-edit in a ForgeCode session. Your editor should open $FORGE_CONFIG/.forge.toml.
|
||||
|
||||
## Reverting to the Default
|
||||
|
||||
```
|
||||
unset FORGE_CONFIG
|
||||
```
|
||||
|
||||
Or remove the line from ~/.zshrc and reload.
|
||||
|
||||
## Migrating an Existing Config
|
||||
|
||||
Move the directory:
|
||||
|
||||
```
|
||||
mv ~/forge ~/.config/forgecodeexport FORGE_CONFIG=~/.config/forgecode
|
||||
```
|
||||
|
||||
For the full list of settings inside the config file, see the .forge.toml reference.
|
||||
Reference in New Issue
Block a user