diff --git a/jgvariant-tool/pom.xml b/jgvariant-tool/pom.xml
index 6e01ade..60db3f3 100644
--- a/jgvariant-tool/pom.xml
+++ b/jgvariant-tool/pom.xml
@@ -73,12 +73,6 @@
       <groupId>org.eclipse</groupId>
       <artifactId>yasson</artifactId>
     </dependency>
-
-    <!-- Guava -->
-    <dependency>
-      <groupId>com.google.guava</groupId>
-      <artifactId>guava</artifactId>
-    </dependency>
   </dependencies>
 
   <build>
diff --git a/jgvariant-tool/src/main/java/eu/mulk/jgvariant/tool/jsonb/VariantSerializer.java b/jgvariant-tool/src/main/java/eu/mulk/jgvariant/tool/jsonb/VariantSerializer.java
index 99ff553..311033c 100644
--- a/jgvariant-tool/src/main/java/eu/mulk/jgvariant/tool/jsonb/VariantSerializer.java
+++ b/jgvariant-tool/src/main/java/eu/mulk/jgvariant/tool/jsonb/VariantSerializer.java
@@ -4,13 +4,13 @@
 
 package eu.mulk.jgvariant.tool.jsonb;
 
-import com.google.common.primitives.Bytes;
 import eu.mulk.jgvariant.core.Signature;
 import eu.mulk.jgvariant.core.Variant;
 import jakarta.json.bind.serializer.JsonbSerializer;
 import jakarta.json.bind.serializer.SerializationContext;
 import jakarta.json.stream.JsonGenerator;
 import java.text.ParseException;
+import java.util.Collection;
 import java.util.List;
 
 @SuppressWarnings("java:S6548")
@@ -35,9 +35,18 @@
   @SuppressWarnings("unchecked")
   public void serialize(Variant obj, JsonGenerator generator, SerializationContext ctx) {
     if (obj.signature().equals(byteArraySignature)) {
-      byteArraySerializer.serialize(Bytes.toArray((List<Byte>) obj.value()), generator, ctx);
+      byteArraySerializer.serialize(byteArrayOf((List<Byte>) obj.value()), generator, ctx);
     } else {
       ctx.serialize(obj.value(), generator);
     }
   }
+
+  private static byte[] byteArrayOf(Collection<Byte> bytes) {
+    byte[] result = new byte[bytes.size()];
+    int i = 0;
+    for (byte b : bytes) {
+      result[i++] = b;
+    }
+    return result;
+  }
 }
diff --git a/jgvariant-tool/src/main/java/module-info.java b/jgvariant-tool/src/main/java/module-info.java
index e66981c..add77c0 100644
--- a/jgvariant-tool/src/main/java/module-info.java
+++ b/jgvariant-tool/src/main/java/module-info.java
@@ -4,7 +4,6 @@
 
 module eu.mulk.jgvariant.tool {
   requires transitive eu.mulk.jgvariant.ostree;
-  requires com.google.common;
   requires info.picocli;
   requires jakarta.json;
   requires jakarta.json.bind;
