diff --git a/apps/i2psnark/java/src/org/klomp/snark/SnarkManager.java b/apps/i2psnark/java/src/org/klomp/snark/SnarkManager.java
index 4f1cb9a2d697e1a0ba4fac0143b40508ee5b2139..1b29273927c097f172bef32191a31276b7b657da 100644
--- a/apps/i2psnark/java/src/org/klomp/snark/SnarkManager.java
+++ b/apps/i2psnark/java/src/org/klomp/snark/SnarkManager.java
@@ -881,6 +881,28 @@ public class SnarkManager implements CompleteListener, ClientApp {
         }
         return theme;
     }
+    
+    /**
+     * Get the path to the preferred embedded icons for toImg, "solid/" for
+     * dark and light, "" for everything else.
+     *
+     * If you add a theme with a new icon set, then you need to add a
+     * corresponding condition here.
+     *
+     * @return String "solid/" or ""
+     * @since 0.9.48
+     */
+    public String getThemeIconSet() {
+        String iconset = "";
+        if (_log.shouldLog(Log.DEBUG))
+            _log.debug("Theme was: " + this.getTheme());
+        if (this.getTheme().equals("dark") || this.getTheme().equals("light")) {
+            if (_log.shouldLog(Log.DEBUG))
+                _log.debug("Using solid iconset.");
+            iconset = "solid/";
+        }
+        return iconset;
+    }
 
     /**
      * Get all themes
diff --git a/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java b/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java
index b4737ee610779cbb4bc8768454d72c1c9a7d3c3a..d74d579287e59b5fc0b3a47d1fbdfe1aac44da8a 100644
--- a/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java
+++ b/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java
@@ -4206,7 +4206,7 @@ public class I2PSnarkServlet extends BasicServlet {
      *  @since 0.8.2
      */
     private String toImg(String icon, String altText) {
-        return "<img alt=\"" + altText + "\" height=\"16\" width=\"16\" src=\"" + _contextPath + WARBASE + "icons/" + icon + ".png\">";
+        return "<img alt=\"" + altText + "\" height=\"16\" width=\"16\" src=\"" + _contextPath + WARBASE + "icons/" + _manager.getThemeIconSet() + icon + ".png\">";
     }
 
     /**
diff --git a/installer/resources/themes/snark/dark/images/icons/application.png b/apps/i2psnark/resources/icons/solid/application.png
similarity index 100%
rename from installer/resources/themes/snark/dark/images/icons/application.png
rename to apps/i2psnark/resources/icons/solid/application.png
diff --git a/installer/resources/themes/snark/dark/images/icons/basket_put.png b/apps/i2psnark/resources/icons/solid/basket_put.png
similarity index 100%
rename from installer/resources/themes/snark/dark/images/icons/basket_put.png
rename to apps/i2psnark/resources/icons/solid/basket_put.png
diff --git a/installer/resources/themes/snark/dark/images/icons/cancel.png b/apps/i2psnark/resources/icons/solid/cancel.png
similarity index 100%
rename from installer/resources/themes/snark/dark/images/icons/cancel.png
rename to apps/i2psnark/resources/icons/solid/cancel.png
diff --git a/installer/resources/themes/snark/dark/images/icons/cd.png b/apps/i2psnark/resources/icons/solid/cd.png
similarity index 100%
rename from installer/resources/themes/snark/dark/images/icons/cd.png
rename to apps/i2psnark/resources/icons/solid/cd.png
diff --git a/installer/resources/themes/snark/dark/images/icons/clock.png b/apps/i2psnark/resources/icons/solid/clock.png
similarity index 100%
rename from installer/resources/themes/snark/dark/images/icons/clock.png
rename to apps/i2psnark/resources/icons/solid/clock.png
diff --git a/installer/resources/themes/snark/dark/images/icons/clock_red.png b/apps/i2psnark/resources/icons/solid/clock_red.png
similarity index 100%
rename from installer/resources/themes/snark/dark/images/icons/clock_red.png
rename to apps/i2psnark/resources/icons/solid/clock_red.png
diff --git a/installer/resources/themes/snark/dark/images/icons/compress.png b/apps/i2psnark/resources/icons/solid/compress.png
similarity index 100%
rename from installer/resources/themes/snark/dark/images/icons/compress.png
rename to apps/i2psnark/resources/icons/solid/compress.png
diff --git a/installer/resources/themes/snark/dark/images/icons/ebook.png b/apps/i2psnark/resources/icons/solid/ebook.png
similarity index 100%
rename from installer/resources/themes/snark/dark/images/icons/ebook.png
rename to apps/i2psnark/resources/icons/solid/ebook.png
diff --git a/installer/resources/themes/snark/dark/images/icons/film.png b/apps/i2psnark/resources/icons/solid/film.png
similarity index 100%
rename from installer/resources/themes/snark/dark/images/icons/film.png
rename to apps/i2psnark/resources/icons/solid/film.png
diff --git a/installer/resources/themes/snark/dark/images/icons/folder.png b/apps/i2psnark/resources/icons/solid/folder.png
similarity index 100%
rename from installer/resources/themes/snark/dark/images/icons/folder.png
rename to apps/i2psnark/resources/icons/solid/folder.png
diff --git a/installer/resources/themes/snark/dark/images/icons/html.png b/apps/i2psnark/resources/icons/solid/html.png
similarity index 100%
rename from installer/resources/themes/snark/dark/images/icons/html.png
rename to apps/i2psnark/resources/icons/solid/html.png
diff --git a/installer/resources/themes/snark/dark/images/icons/itoopie_xxsm.png b/apps/i2psnark/resources/icons/solid/itoopie_xxsm.png
similarity index 100%
rename from installer/resources/themes/snark/dark/images/icons/itoopie_xxsm.png
rename to apps/i2psnark/resources/icons/solid/itoopie_xxsm.png
diff --git a/installer/resources/themes/snark/dark/images/icons/magnet.png b/apps/i2psnark/resources/icons/solid/magnet.png
similarity index 100%
rename from installer/resources/themes/snark/dark/images/icons/magnet.png
rename to apps/i2psnark/resources/icons/solid/magnet.png
diff --git a/installer/resources/themes/snark/dark/images/icons/music.png b/apps/i2psnark/resources/icons/solid/music.png
similarity index 100%
rename from installer/resources/themes/snark/dark/images/icons/music.png
rename to apps/i2psnark/resources/icons/solid/music.png
diff --git a/installer/resources/themes/snark/dark/images/icons/package.png b/apps/i2psnark/resources/icons/solid/package.png
similarity index 100%
rename from installer/resources/themes/snark/dark/images/icons/package.png
rename to apps/i2psnark/resources/icons/solid/package.png
diff --git a/installer/resources/themes/snark/dark/images/icons/page.png b/apps/i2psnark/resources/icons/solid/page.png
similarity index 100%
rename from installer/resources/themes/snark/dark/images/icons/page.png
rename to apps/i2psnark/resources/icons/solid/page.png
diff --git a/installer/resources/themes/snark/dark/images/icons/page_white.png b/apps/i2psnark/resources/icons/solid/page_white.png
similarity index 100%
rename from installer/resources/themes/snark/dark/images/icons/page_white.png
rename to apps/i2psnark/resources/icons/solid/page_white.png
diff --git a/installer/resources/themes/snark/dark/images/icons/page_white_acrobat.png b/apps/i2psnark/resources/icons/solid/page_white_acrobat.png
similarity index 100%
rename from installer/resources/themes/snark/dark/images/icons/page_white_acrobat.png
rename to apps/i2psnark/resources/icons/solid/page_white_acrobat.png
diff --git a/installer/resources/themes/snark/dark/images/icons/photo.png b/apps/i2psnark/resources/icons/solid/photo.png
similarity index 100%
rename from installer/resources/themes/snark/dark/images/icons/photo.png
rename to apps/i2psnark/resources/icons/solid/photo.png
diff --git a/installer/resources/themes/snark/dark/images/icons/plugin.png b/apps/i2psnark/resources/icons/solid/plugin.png
similarity index 100%
rename from installer/resources/themes/snark/dark/images/icons/plugin.png
rename to apps/i2psnark/resources/icons/solid/plugin.png
diff --git a/installer/resources/themes/snark/dark/images/icons/tick.png b/apps/i2psnark/resources/icons/solid/tick.png
similarity index 100%
rename from installer/resources/themes/snark/dark/images/icons/tick.png
rename to apps/i2psnark/resources/icons/solid/tick.png
diff --git a/installer/resources/themes/snark/dark/snark.css b/installer/resources/themes/snark/dark/snark.css
index 49a00edd32aa60d76edc223ebf680aa0ae74125f..3cb668a7846a8e62b047f17774d5557c304b219f 100644
--- a/installer/resources/themes/snark/dark/snark.css
+++ b/installer/resources/themes/snark/dark/snark.css
@@ -3272,83 +3272,3 @@ th a img {
      background-size: 14px auto !important;
 }
 
-.snarkTorrentDetails img {
-    height: 0px !important;
-    width: 0px !important;
-    padding: 16px !important;
-}
-
-.snarkDirInfo img {
-    height: 0px !important;
-    width: 0px !important;
-    padding: 16px !important;
-}
-
-img[src*="i2psnark/.resources/icons/application.png"]{
-    background: url("/themes/snark/dark/images/icons/") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/basket_put.png"]{
-    background: url("/themes/snark/dark/images/icons/basket_put.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/cancel.png"]{
-    background: url("/themes/snark/dark/images/icons/cancel.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/cd.png"]{
-    background: url("/themes/snark/dark/images/icons/cd.pmg") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/clock.png"]{
-    background: url("/themes/snark/dark/images/icons/clock.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/clock_red.png"]{
-    background: url("/themes/snark/dark/images/icons/clock_red.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/compress.png"]{
-    background: url("/themes/snark/dark/images/icons/compress.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/ebook.png"]{
-    background: url("/themes/snark/dark/images/icons/ebook.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/film.png"]{
-    background: url("/themes/snark/dark/images/icons/film.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/folder.png"]{
-    background: url("/themes/snark/dark/images/icons/folder.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/html.png"]{
-    background: url("/themes/snark/dark/images/icons/html.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/itoopie_xxsm.png"]{
-    background: url("/themes/snark/dark/images/icons/itoopie_xxsm.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/magnet.png"]{
-    background: url("/themes/snark/dark/images/icons/magnet.png") center no-repeat;
-    height: 0px;
-    width: 0px;
-    padding: 16px;
-    margin: -4px !important;
-}
-img[src*="i2psnark/.resources/icons/music.png"]{
-    background: url("/themes/snark/dark/images/icons/music.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/package.png"]{
-    background: url("/themes/snark/dark/images/icons/package.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/page.png"]{
-    background: url("/themes/snark/dark/images/icons/page.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/page_white.png"]{
-    background: url("/themes/snark/dark/images/icons/page_white.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/page_white_acrobat.png"]{
-    background: url("/themes/snark/dark/images/icons/page_white_acrobat.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/photo.png"]{
-    background: url("/themes/snark/dark/images/icons/photo.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/plugin.png"]{
-    background: url("/themes/snark/dark/images/icons/plugin.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/tick.png"]{
-    background: url("/themes/snark/dark/images/icons/tick.png") center no-repeat
-}
-
diff --git a/installer/resources/themes/snark/light/images/icons/application.png b/installer/resources/themes/snark/light/images/icons/application.png
deleted file mode 100644
index 3ae1e2e41903e40555617b64fd983a4257ca6bc4..0000000000000000000000000000000000000000
Binary files a/installer/resources/themes/snark/light/images/icons/application.png and /dev/null differ
diff --git a/installer/resources/themes/snark/light/images/icons/basket_put.png b/installer/resources/themes/snark/light/images/icons/basket_put.png
deleted file mode 100644
index 96cebb8d877cf4f6a23ece54dec0493ba0ef0038..0000000000000000000000000000000000000000
Binary files a/installer/resources/themes/snark/light/images/icons/basket_put.png and /dev/null differ
diff --git a/installer/resources/themes/snark/light/images/icons/cancel.png b/installer/resources/themes/snark/light/images/icons/cancel.png
deleted file mode 100644
index fd36e7ae4582d937f482408a109d416a0d8796c2..0000000000000000000000000000000000000000
Binary files a/installer/resources/themes/snark/light/images/icons/cancel.png and /dev/null differ
diff --git a/installer/resources/themes/snark/light/images/icons/cd.png b/installer/resources/themes/snark/light/images/icons/cd.png
deleted file mode 100644
index 8303483dfa881527e52656676b70a7698e6dd1c7..0000000000000000000000000000000000000000
Binary files a/installer/resources/themes/snark/light/images/icons/cd.png and /dev/null differ
diff --git a/installer/resources/themes/snark/light/images/icons/clock.png b/installer/resources/themes/snark/light/images/icons/clock.png
deleted file mode 100644
index 5263abbc805b60d0aa16e941e0f372b2310e05c6..0000000000000000000000000000000000000000
Binary files a/installer/resources/themes/snark/light/images/icons/clock.png and /dev/null differ
diff --git a/installer/resources/themes/snark/light/images/icons/clock_red.png b/installer/resources/themes/snark/light/images/icons/clock_red.png
deleted file mode 100644
index 5d674a3ff07dd48707405834a3f565a6330bac90..0000000000000000000000000000000000000000
Binary files a/installer/resources/themes/snark/light/images/icons/clock_red.png and /dev/null differ
diff --git a/installer/resources/themes/snark/light/images/icons/compress.png b/installer/resources/themes/snark/light/images/icons/compress.png
deleted file mode 100644
index b4c3e83200627aa8bf13f9643d144aa5a230ef44..0000000000000000000000000000000000000000
Binary files a/installer/resources/themes/snark/light/images/icons/compress.png and /dev/null differ
diff --git a/installer/resources/themes/snark/light/images/icons/ebook.png b/installer/resources/themes/snark/light/images/icons/ebook.png
deleted file mode 100644
index c114c853f06dd0825a13b803fd0899fda150e1ff..0000000000000000000000000000000000000000
Binary files a/installer/resources/themes/snark/light/images/icons/ebook.png and /dev/null differ
diff --git a/installer/resources/themes/snark/light/images/icons/film.png b/installer/resources/themes/snark/light/images/icons/film.png
deleted file mode 100644
index fafa9417d1c0951528b512ce193af9f971b3999f..0000000000000000000000000000000000000000
Binary files a/installer/resources/themes/snark/light/images/icons/film.png and /dev/null differ
diff --git a/installer/resources/themes/snark/light/images/icons/folder.png b/installer/resources/themes/snark/light/images/icons/folder.png
deleted file mode 100644
index 1d66db72e8b76a8079e181450c9d9a92eef573d7..0000000000000000000000000000000000000000
Binary files a/installer/resources/themes/snark/light/images/icons/folder.png and /dev/null differ
diff --git a/installer/resources/themes/snark/light/images/icons/html.png b/installer/resources/themes/snark/light/images/icons/html.png
deleted file mode 100644
index 03f83ce0d955a5ccfe0e87b53bbfdaf1e56ac88d..0000000000000000000000000000000000000000
Binary files a/installer/resources/themes/snark/light/images/icons/html.png and /dev/null differ
diff --git a/installer/resources/themes/snark/light/images/icons/itoopie_xxsm.png b/installer/resources/themes/snark/light/images/icons/itoopie_xxsm.png
deleted file mode 100644
index 0cec9e5c979f17c6cd488a5badb66a7e7ad3d7f3..0000000000000000000000000000000000000000
Binary files a/installer/resources/themes/snark/light/images/icons/itoopie_xxsm.png and /dev/null differ
diff --git a/installer/resources/themes/snark/light/images/icons/magnet.png b/installer/resources/themes/snark/light/images/icons/magnet.png
deleted file mode 100644
index d50e84e11a8446623b20994eac7afef5a77b07fa..0000000000000000000000000000000000000000
Binary files a/installer/resources/themes/snark/light/images/icons/magnet.png and /dev/null differ
diff --git a/installer/resources/themes/snark/light/images/icons/music.png b/installer/resources/themes/snark/light/images/icons/music.png
deleted file mode 100644
index 5a8252b61daf3584dc736f4de5e6a90bfa1e9b38..0000000000000000000000000000000000000000
Binary files a/installer/resources/themes/snark/light/images/icons/music.png and /dev/null differ
diff --git a/installer/resources/themes/snark/light/images/icons/package.png b/installer/resources/themes/snark/light/images/icons/package.png
deleted file mode 100644
index f7730fca6c267ab95d466705c902a06f3cfe3897..0000000000000000000000000000000000000000
Binary files a/installer/resources/themes/snark/light/images/icons/package.png and /dev/null differ
diff --git a/installer/resources/themes/snark/light/images/icons/page.png b/installer/resources/themes/snark/light/images/icons/page.png
deleted file mode 100644
index 05fb6f8eb4fb044e9861654431acbdb78e86a528..0000000000000000000000000000000000000000
Binary files a/installer/resources/themes/snark/light/images/icons/page.png and /dev/null differ
diff --git a/installer/resources/themes/snark/light/images/icons/page_white.png b/installer/resources/themes/snark/light/images/icons/page_white.png
deleted file mode 100644
index f76c0652ca38ededdc0ab467f6194278533a2948..0000000000000000000000000000000000000000
Binary files a/installer/resources/themes/snark/light/images/icons/page_white.png and /dev/null differ
diff --git a/installer/resources/themes/snark/light/images/icons/page_white_acrobat.png b/installer/resources/themes/snark/light/images/icons/page_white_acrobat.png
deleted file mode 100644
index 33e8e88c6af86925aab29806016919430866c748..0000000000000000000000000000000000000000
Binary files a/installer/resources/themes/snark/light/images/icons/page_white_acrobat.png and /dev/null differ
diff --git a/installer/resources/themes/snark/light/images/icons/photo.png b/installer/resources/themes/snark/light/images/icons/photo.png
deleted file mode 100644
index 1ee15b6d8f2f40094365dbdef3bc9c54580741bc..0000000000000000000000000000000000000000
Binary files a/installer/resources/themes/snark/light/images/icons/photo.png and /dev/null differ
diff --git a/installer/resources/themes/snark/light/images/icons/plugin.png b/installer/resources/themes/snark/light/images/icons/plugin.png
deleted file mode 100644
index cbf0266510a130e582a6e6c073eda87810f6b8a9..0000000000000000000000000000000000000000
Binary files a/installer/resources/themes/snark/light/images/icons/plugin.png and /dev/null differ
diff --git a/installer/resources/themes/snark/light/images/icons/tick.png b/installer/resources/themes/snark/light/images/icons/tick.png
deleted file mode 100644
index 2431994ab7ec96e41c92de7ec4734a2fecc789fd..0000000000000000000000000000000000000000
Binary files a/installer/resources/themes/snark/light/images/icons/tick.png and /dev/null differ
diff --git a/installer/resources/themes/snark/light/snark.css b/installer/resources/themes/snark/light/snark.css
index f97743e1ba895a1f359f871b60b910cd431d0010..3d81895e209bc4d5b0b2f80f3a22720012557483 100644
--- a/installer/resources/themes/snark/light/snark.css
+++ b/installer/resources/themes/snark/light/snark.css
@@ -2709,83 +2709,3 @@ a, a:link, th, td, button, input, select, textarea {
      background-size: 14px auto !important;
 }
 
-.snarkTorrentDetails img {
-    height: 0px !important;
-    width: 0px !important;
-    padding: 16px !important;
-}
-
-.snarkDirInfo img {
-    height: 0px !important;
-    width: 0px !important;
-    padding: 16px !important;
-}
-
-img[src*="i2psnark/.resources/icons/application.png"]{
-    background: url("/themes/snark/light/images/icons/application") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/basket_put.png"]{
-    background: url("/themes/snark/light/images/icons/basket_put.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/cancel.png"]{
-    background: url("/themes/snark/light/images/icons/cancel.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/cd.png"]{
-    background: url("/themes/snark/light/images/icons/cd.pmg") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/clock.png"]{
-    background: url("/themes/snark/light/images/icons/clock.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/clock_red.png"]{
-    background: url("/themes/snark/light/images/icons/clock_red.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/compress.png"]{
-    background: url("/themes/snark/light/images/icons/compress.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/ebook.png"]{
-    background: url("/themes/snark/light/images/icons/ebook.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/film.png"]{
-    background: url("/themes/snark/light/images/icons/film.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/folder.png"]{
-    background: url("/themes/snark/light/images/icons/folder.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/html.png"]{
-    background: url("/themes/snark/light/images/icons/html.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/itoopie_xxsm.png"]{
-    background: url("/themes/snark/light/images/icons/itoopie_xxsm.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/magnet.png"]{
-    background: url("/themes/snark/light/images/icons/magnet.png") center no-repeat;
-    height: 0px;
-    width: 0px;
-    padding: 16px;
-    margin: -4px !important;
-}
-img[src*="i2psnark/.resources/icons/music.png"]{
-    background: url("/themes/snark/light/images/icons/music.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/package.png"]{
-    background: url("/themes/snark/light/images/icons/package.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/page.png"]{
-    background: url("/themes/snark/light/images/icons/page.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/page_white.png"]{
-    background: url("/themes/snark/light/images/icons/page_white.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/page_white_acrobat.png"]{
-    background: url("/themes/snark/light/images/icons/page_white_acrobat.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/photo.png"]{
-    background: url("/themes/snark/light/images/icons/photo.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/plugin.png"]{
-    background: url("/themes/snark/light/images/icons/plugin.png") center no-repeat
-}
-img[src*="i2psnark/.resources/icons/tick.png"]{
-    background: url("/themes/snark/light/images/icons/tick.png") center no-repeat
-}
-