summaryrefslogtreecommitdiff
path: root/internal/paths
diff options
context:
space:
mode:
Diffstat (limited to 'internal/paths')
-rw-r--r--internal/paths/paths.go14
1 files changed, 13 insertions, 1 deletions
diff --git a/internal/paths/paths.go b/internal/paths/paths.go
index c7bdd94..67f6da6 100644
--- a/internal/paths/paths.go
+++ b/internal/paths/paths.go
@@ -1,3 +1,13 @@
+// Package paths handles the resolution of configuration and runtime directories,
+// providing a consistent way to locate profile and PID tracking files.
+//
+// Profile Storage:
+// Profiles are stored as standard .conf files in ~/.config/wg-wrap/profiles/.
+//
+// PID Tracking:
+// To manage namespace lifecycles and shared sessions, wg-wrap tracks active processes
+// using PID files located in the runtime base directory:
+// /run/user/$UID/wg-wrap/profiles/<profile-name>/pids/
package paths
import (
@@ -9,7 +19,9 @@ import (
// PathManager handles the resolution of configuration and runtime directories.
// By using a struct, we can instantiate different managers for parallel tests.
type PathManager struct {
- ConfigDirOverride string
+ // ConfigDirOverride allows overriding the default config directory (usually XDG_CONFIG_HOME/wg-wrap/profiles).
+ ConfigDirOverride string
+ // RuntimeBaseOverride allows overriding the default runtime directory (usually XDG_RUNTIME_DIR).
RuntimeBaseOverride string
}