diff --git a/server/src/libvirt-connection.zig b/server/src/libvirt-connection.zig
index 168aeaa..e802908 100644
--- a/server/src/libvirt-connection.zig
+++ b/server/src/libvirt-connection.zig
@@ -3,19 +3,22 @@ const mem = std.mem;
 const heap = std.heap;
 
 const c = @import("libvirt-c.zig").c;
+const err = @import("libvirt-error.zig");
+const VirError = err.VirError;
+const Connection = @This();
 
 ptr: c.virConnectPtr,
 allocator: mem.Allocator,
 
-pub fn connect(uri: []const u8, allocator: mem.Allocator) VirError!Connection {
+pub fn init(uri: []const u8, allocator: mem.Allocator) VirError!Connection {
     const connection = c.virConnectOpenAuth(@ptrCast(uri), c.virConnectAuthPtrDefault, 0);
     if (connection) |conn| return .{
         .ptr = conn,
         .allocator = allocator,
-    } else return handleError();
+    } else return err.handleError();
 }
 
-pub fn close(self: *const Connection) void {
+pub fn deinit(self: *const Connection) void {
     _ = c.virConnectClose(self.ptr);
 }