summaryrefslogtreecommitdiff
path: root/src/session_paths.zig
diff options
context:
space:
mode:
authort <t@tjp.lol>2026-06-23 09:38:23 -0600
committert <t@tjp.lol>2026-06-23 10:53:26 -0600
commit69a1ee138bb78ad4663fe2d9e58678f7b0d07b74 (patch)
tree453d3ad42a07536220e6ca5d91b439ff57793e32 /src/session_paths.zig
parent538a5d926fa626a00cc3dc12c555f11f82867efd (diff)
ponytail simplifications to panto cli and lua extensiosn
Diffstat (limited to 'src/session_paths.zig')
-rw-r--r--src/session_paths.zig11
1 files changed, 4 insertions, 7 deletions
diff --git a/src/session_paths.zig b/src/session_paths.zig
index 162085e..170c8fb 100644
--- a/src/session_paths.zig
+++ b/src/session_paths.zig
@@ -11,6 +11,7 @@
//! gives a flat directory name per project, easy to spot in `ls`.
const std = @import("std");
+const panto_home = @import("panto_home.zig");
const Allocator = std.mem.Allocator;
/// Resolve the absolute sessions directory for the given cwd. Caller owns
@@ -46,13 +47,9 @@ pub fn resolveSessionsBase(
if (environ_map.get("PANTO_SESSION_DIR")) |explicit| {
return try allocator.dupe(u8, explicit);
}
- if (environ_map.get("XDG_DATA_HOME")) |xdg| {
- return try std.fs.path.join(allocator, &.{ xdg, "panto", "sessions" });
- }
- if (environ_map.get("HOME")) |home| {
- return try std.fs.path.join(allocator, &.{ home, ".local", "share", "panto", "sessions" });
- }
- return error.NoHomeDirectory;
+ const home = try panto_home.homePath(allocator, environ_map);
+ defer allocator.free(home);
+ return try std.fs.path.join(allocator, &.{ home, "sessions" });
}
/// Encode a working directory into a flat directory name. Caller owns.