diff --git a/Cargo.lock b/Cargo.lock
index b612942bbc36e6a29565aca42081d5804fbd48cd..05d2ef9fa0b334fc240fb976fb52e3df48d292ee 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -1467,6 +1467,19 @@ version = "0.3.31"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2"
 
+[[package]]
+name = "pkgar"
+version = "0.1.15"
+dependencies = [
+ "blake3 0.3.8",
+ "clap",
+ "error-chain",
+ "pkgar-core 0.1.15",
+ "pkgar-keys 0.1.15",
+ "plain",
+ "user-error",
+]
+
 [[package]]
 name = "pkgar"
 version = "0.1.15"
@@ -1476,12 +1489,22 @@ dependencies = [
  "blake3 0.3.8",
  "clap",
  "error-chain",
- "pkgar-core",
- "pkgar-keys",
+ "pkgar-core 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkgar-keys 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
  "plain",
  "user-error",
 ]
 
+[[package]]
+name = "pkgar-core"
+version = "0.1.15"
+dependencies = [
+ "bitflags 1.3.2",
+ "blake3 0.3.8",
+ "dryoc",
+ "plain",
+]
+
 [[package]]
 name = "pkgar-core"
 version = "0.1.15"
@@ -1494,6 +1517,23 @@ dependencies = [
  "plain",
 ]
 
+[[package]]
+name = "pkgar-keys"
+version = "0.1.15"
+dependencies = [
+ "clap",
+ "dirs 3.0.2",
+ "error-chain",
+ "hex",
+ "lazy_static",
+ "pkgar-core 0.1.15",
+ "seckey",
+ "serde",
+ "termion",
+ "toml 0.8.19",
+ "user-error",
+]
+
 [[package]]
 name = "pkgar-keys"
 version = "0.1.15"
@@ -1505,7 +1545,7 @@ dependencies = [
  "error-chain",
  "hex",
  "lazy_static",
- "pkgar-core",
+ "pkgar-core 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
  "seckey",
  "serde",
  "termion",
@@ -1688,9 +1728,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6fe401458446fceb860923c57656f112b3c082310c5d7569760efc1a92b9e22e"
 dependencies = [
  "indicatif",
- "pkgar",
- "pkgar-core",
- "pkgar-keys",
+ "pkgar 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkgar-core 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkgar-keys 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
  "reqwest",
  "serde",
  "serde_derive",
@@ -1714,8 +1754,8 @@ version = "0.1.0"
 dependencies = [
  "blake3 1.5.3",
  "pbr",
- "pkgar",
- "pkgar-keys",
+ "pkgar 0.1.15",
+ "pkgar-keys 0.1.15",
  "redoxer",
  "serde",
  "termion",
@@ -1736,9 +1776,9 @@ dependencies = [
  "fscommon",
  "gpt",
  "libc",
- "pkgar",
- "pkgar-core",
- "pkgar-keys",
+ "pkgar 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkgar-core 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkgar-keys 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand",
  "redox-pkg",
  "redox_liner",
diff --git a/Cargo.toml b/Cargo.toml
index bf530ff98e7b6b16e423b81cc2155594c2ff661c..635de33053cc34f449c692f29c12e88f344eda5d 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -22,8 +22,8 @@ path = "src/lib.rs"
 [dependencies]
 blake3 = "=1.5.3" # 1.5.4 is incompatible with blake3 0.3 dependency from pkgar
 pbr = "1.0.2"
-pkgar = "0.1.7"
-pkgar-keys = "0.1.0"
+pkgar = { path = "pkgar/pkgar" }
+pkgar-keys = { path = "pkgar/pkgar-keys" }
 redoxer = "0.2"
 serde = { version = "=1.0.197", features = ["derive"] }
 termion = "4"
diff --git a/pkgar b/pkgar
index ccfa2bd3adc41f192d12cb1778a85da232fa2456..0ccbc9914b1ec655e23d4babc5afed87e42e9a0f 160000
--- a/pkgar
+++ b/pkgar
@@ -1 +1 @@
-Subproject commit ccfa2bd3adc41f192d12cb1778a85da232fa2456
+Subproject commit 0ccbc9914b1ec655e23d4babc5afed87e42e9a0f