diff --git a/src/config.zig b/src/config.zig index 0a7f9f533..e70ff7946 100644 --- a/src/config.zig +++ b/src/config.zig @@ -4,10 +4,8 @@ const builtin = @import("builtin"); const Allocator = std.mem.Allocator; const ArenaAllocator = std.heap.ArenaAllocator; const inputpkg = @import("input.zig"); -const passwd = @import("passwd.zig"); const terminal = @import("terminal/main.zig"); const internal_os = @import("os/main.zig"); -const xdg = @import("xdg.zig"); const cli_args = @import("cli_args.zig"); const log = std.log.scoped(.config); @@ -625,7 +623,7 @@ pub const Config = struct { /// Load the configuration from the default file locations. Currently, /// this loads from $XDG_CONFIG_HOME/ghostty/config. pub fn loadDefaultFiles(self: *Config, alloc: Allocator) !void { - const home_config_path = try xdg.config(alloc, .{ .subdir = "ghostty/config" }); + const home_config_path = try internal_os.xdg.config(alloc, .{ .subdir = "ghostty/config" }); defer alloc.free(home_config_path); const cwd = std.fs.cwd(); @@ -740,7 +738,7 @@ pub const Config = struct { } // We need the passwd entry for the remainder - const pw = try passwd.get(alloc); + const pw = try internal_os.passwd.get(alloc); if (self.command == null) { if (pw.shell) |sh| { log.info("default shell src=passwd value={s}", .{sh}); diff --git a/src/main.zig b/src/main.zig index d93683d06..2ba800b0e 100644 --- a/src/main.zig +++ b/src/main.zig @@ -10,7 +10,6 @@ const xev = @import("xev"); const fontconfig = @import("fontconfig"); const harfbuzz = @import("harfbuzz"); const renderer = @import("renderer.zig"); -const xdg = @import("xdg.zig"); const apprt = @import("apprt.zig"); const App = @import("App.zig"); @@ -194,9 +193,6 @@ test { // TODO _ = @import("blocking_queue.zig"); _ = @import("config.zig"); - _ = @import("homedir.zig"); - _ = @import("passwd.zig"); - _ = @import("xdg.zig"); _ = @import("cli_args.zig"); _ = @import("lru.zig"); } diff --git a/src/homedir.zig b/src/os/homedir.zig similarity index 100% rename from src/homedir.zig rename to src/os/homedir.zig diff --git a/src/os/main.zig b/src/os/main.zig index 7479c3089..3c2afcb31 100644 --- a/src/os/main.zig +++ b/src/os/main.zig @@ -3,7 +3,10 @@ pub usingnamespace @import("file.zig"); pub usingnamespace @import("flatpak.zig"); +pub usingnamespace @import("homedir.zig"); pub usingnamespace @import("locale.zig"); pub usingnamespace @import("macos_version.zig"); pub usingnamespace @import("mouse.zig"); pub const TempDir = @import("TempDir.zig"); +pub const passwd = @import("passwd.zig"); +pub const xdg = @import("xdg.zig"); diff --git a/src/passwd.zig b/src/os/passwd.zig similarity index 97% rename from src/passwd.zig rename to src/os/passwd.zig index e492d120a..3b6a1eab7 100644 --- a/src/passwd.zig +++ b/src/os/passwd.zig @@ -1,9 +1,9 @@ const std = @import("std"); const builtin = @import("builtin"); -const build_config = @import("build_config.zig"); +const internal_os = @import("main.zig"); +const build_config = @import("../build_config.zig"); const Allocator = std.mem.Allocator; const ArenaAllocator = std.heap.ArenaAllocator; -const internal_os = @import("os/main.zig"); const log = std.log.scoped(.passwd); @@ -61,7 +61,7 @@ pub fn get(alloc: Allocator) !Entry { // Note: we wrap our getent call in a /bin/sh login shell because // some operating systems (NixOS tested) don't set the PATH for various // utilities properly until we get a login shell. - const Pty = @import("Pty.zig"); + const Pty = @import("../Pty.zig"); var pty = try Pty.open(.{}); defer pty.deinit(); var cmd: internal_os.FlatpakHostCommand = .{ diff --git a/src/xdg.zig b/src/os/xdg.zig similarity index 100% rename from src/xdg.zig rename to src/os/xdg.zig