diff --git a/themes/carbon/Focal_Fossa_Wallpapers/Focal Fossa_orange_RGB.svg b/themes/carbon/Focal_Fossa_Wallpapers/Focal Fossa_orange_RGB.svg
new file mode 100644
index 0000000..2ea2468
--- /dev/null
+++ b/themes/carbon/Focal_Fossa_Wallpapers/Focal Fossa_orange_RGB.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/Focal Fossa_white_RGB.svg b/themes/carbon/Focal_Fossa_Wallpapers/Focal Fossa_white_RGB.svg
new file mode 100644
index 0000000..db242ec
--- /dev/null
+++ b/themes/carbon/Focal_Fossa_Wallpapers/Focal Fossa_white_RGB.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/JPG/.DS_Store b/themes/carbon/Focal_Fossa_Wallpapers/JPG/.DS_Store
new file mode 100644
index 0000000..5008ddf
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/JPG/.DS_Store differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_Plain_WP_1920x1080.jpg b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_Plain_WP_1920x1080.jpg
new file mode 100644
index 0000000..deebd59
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_Plain_WP_1920x1080.jpg differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_Plain_WP_1920x1080_GREY.jpg b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_Plain_WP_1920x1080_GREY.jpg
new file mode 100644
index 0000000..e8128ce
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_Plain_WP_1920x1080_GREY.jpg differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_Plain_WP_2560x1440.jpg b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_Plain_WP_2560x1440.jpg
new file mode 100644
index 0000000..9e032d5
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_Plain_WP_2560x1440.jpg differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_Plain_WP_2560x1440_GREY.jpg b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_Plain_WP_2560x1440_GREY.jpg
new file mode 100644
index 0000000..3c62cd7
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_Plain_WP_2560x1440_GREY.jpg differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_Plain_WP_4096x2304.jpg b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_Plain_WP_4096x2304.jpg
new file mode 100644
index 0000000..3ca217f
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_Plain_WP_4096x2304.jpg differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_Plain_WP_4096x2304_GREY.jpg b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_Plain_WP_4096x2304_GREY.jpg
new file mode 100644
index 0000000..706e90f
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_Plain_WP_4096x2304_GREY.jpg differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_Plain_WP_8192x4608.jpg b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_Plain_WP_8192x4608.jpg
new file mode 100644
index 0000000..f701374
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_Plain_WP_8192x4608.jpg differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_Plain_WP_8192x4608_GREY.jpg b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_Plain_WP_8192x4608_GREY.jpg
new file mode 100644
index 0000000..9e3a012
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_Plain_WP_8192x4608_GREY.jpg differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_WP_1920x1080.jpg b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_WP_1920x1080.jpg
new file mode 100644
index 0000000..30383ba
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_WP_1920x1080.jpg differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_WP_1920x1080_GREY.jpg b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_WP_1920x1080_GREY.jpg
new file mode 100644
index 0000000..46df268
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_WP_1920x1080_GREY.jpg differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_WP_2560x1440.jpg b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_WP_2560x1440.jpg
new file mode 100644
index 0000000..aede03e
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_WP_2560x1440.jpg differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_WP_2560x1440_GREY.jpg b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_WP_2560x1440_GREY.jpg
new file mode 100644
index 0000000..939a027
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_WP_2560x1440_GREY.jpg differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_WP_4096x2304.jpg b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_WP_4096x2304.jpg
new file mode 100644
index 0000000..e4922df
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_WP_4096x2304.jpg differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_WP_4096x2304_GREY.jpg b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_WP_4096x2304_GREY.jpg
new file mode 100644
index 0000000..369d20d
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_WP_4096x2304_GREY.jpg differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_WP_8192x4608.jpg b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_WP_8192x4608.jpg
new file mode 100644
index 0000000..38f2e00
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_WP_8192x4608.jpg differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_WP_8192x4608_GREY.jpg b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_WP_8192x4608_GREY.jpg
new file mode 100644
index 0000000..905f8e6
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/JPG/Focal-Fossa_WP_8192x4608_GREY.jpg differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_Plain_WP_1920x1080.png b/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_Plain_WP_1920x1080.png
new file mode 100644
index 0000000..2ff7836
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_Plain_WP_1920x1080.png differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_Plain_WP_1920x1080_GREY.png b/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_Plain_WP_1920x1080_GREY.png
new file mode 100644
index 0000000..82dcb73
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_Plain_WP_1920x1080_GREY.png differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_Plain_WP_2560x1440.png b/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_Plain_WP_2560x1440.png
new file mode 100644
index 0000000..b157e00
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_Plain_WP_2560x1440.png differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_Plain_WP_2560x1440_GREY.png b/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_Plain_WP_2560x1440_GREY.png
new file mode 100644
index 0000000..2871a17
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_Plain_WP_2560x1440_GREY.png differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_Plain_WP_4096x2304.png b/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_Plain_WP_4096x2304.png
new file mode 100644
index 0000000..ccf8ed9
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_Plain_WP_4096x2304.png differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_Plain_WP_4096x2304_GREY.png b/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_Plain_WP_4096x2304_GREY.png
new file mode 100644
index 0000000..cf74c13
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_Plain_WP_4096x2304_GREY.png differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_WP_1920x1080.png b/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_WP_1920x1080.png
new file mode 100644
index 0000000..1435237
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_WP_1920x1080.png differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_WP_1920x1080_GREY.png b/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_WP_1920x1080_GREY.png
new file mode 100644
index 0000000..9ff06fb
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_WP_1920x1080_GREY.png differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_WP_2560x1440.png b/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_WP_2560x1440.png
new file mode 100644
index 0000000..d40c7bf
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_WP_2560x1440.png differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_WP_2560x1440_GREY.png b/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_WP_2560x1440_GREY.png
new file mode 100644
index 0000000..ae43bdd
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_WP_2560x1440_GREY.png differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_WP_4096x2304.png b/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_WP_4096x2304.png
new file mode 100644
index 0000000..68a0b5d
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_WP_4096x2304.png differ
diff --git a/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_WP_4096x2304_GREY.png b/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_WP_4096x2304_GREY.png
new file mode 100644
index 0000000..66b9505
Binary files /dev/null and b/themes/carbon/Focal_Fossa_Wallpapers/PNG/Focal-Fossa_WP_4096x2304_GREY.png differ
diff --git a/themes/carbon/background.png b/themes/carbon/background.png
new file mode 100644
index 0000000..2ff7836
Binary files /dev/null and b/themes/carbon/background.png differ
diff --git a/themes/carbon/icons/README.md b/themes/carbon/icons/README.md
new file mode 100644
index 0000000..b43f74a
--- /dev/null
+++ b/themes/carbon/icons/README.md
@@ -0,0 +1,5 @@
+battery status icons, lock/shutdown/suspend icons, volume status icons were taken from the Breeze icons theme. (https://develop.kde.org/frameworks/breeze-icons/, copyright KDE and licensed under the GNU LGPL version 3 or later)
+
+battery status icons in particular were modified to look somewhat less ugly when recolored to a single color. this was done because the config automatically recolors all icons to the color value of the foreground (text) color.
+
+the author of this config does not claim copyright of any icons present in this folder unless stated otherwise in the icon's license metadata.
diff --git a/themes/carbon/icons/battery-caution-charging-symbolic.svg b/themes/carbon/icons/battery-caution-charging-symbolic.svg
new file mode 100644
index 0000000..56fe444
--- /dev/null
+++ b/themes/carbon/icons/battery-caution-charging-symbolic.svg
@@ -0,0 +1,12 @@
+
diff --git a/themes/carbon/icons/battery-caution-symbolic.svg b/themes/carbon/icons/battery-caution-symbolic.svg
new file mode 100644
index 0000000..3fb7d4a
--- /dev/null
+++ b/themes/carbon/icons/battery-caution-symbolic.svg
@@ -0,0 +1,9 @@
+
diff --git a/themes/carbon/icons/battery-empty-charging-symbolic.svg b/themes/carbon/icons/battery-empty-charging-symbolic.svg
new file mode 100644
index 0000000..e3e8620
--- /dev/null
+++ b/themes/carbon/icons/battery-empty-charging-symbolic.svg
@@ -0,0 +1,12 @@
+
diff --git a/themes/carbon/icons/battery-empty-symbolic.svg b/themes/carbon/icons/battery-empty-symbolic.svg
new file mode 100644
index 0000000..710c02b
--- /dev/null
+++ b/themes/carbon/icons/battery-empty-symbolic.svg
@@ -0,0 +1,9 @@
+
diff --git a/themes/carbon/icons/battery-full-charged-symbolic.svg b/themes/carbon/icons/battery-full-charged-symbolic.svg
new file mode 100644
index 0000000..ae88a8c
--- /dev/null
+++ b/themes/carbon/icons/battery-full-charged-symbolic.svg
@@ -0,0 +1,70 @@
+
+
diff --git a/themes/carbon/icons/battery-full-charging-symbolic.svg b/themes/carbon/icons/battery-full-charging-symbolic.svg
new file mode 100644
index 0000000..2db325e
--- /dev/null
+++ b/themes/carbon/icons/battery-full-charging-symbolic.svg
@@ -0,0 +1,69 @@
+
+
diff --git a/themes/carbon/icons/battery-full-symbolic.svg b/themes/carbon/icons/battery-full-symbolic.svg
new file mode 100644
index 0000000..7daa418
--- /dev/null
+++ b/themes/carbon/icons/battery-full-symbolic.svg
@@ -0,0 +1,62 @@
+
+
diff --git a/themes/carbon/icons/battery-good-charging-symbolic.svg b/themes/carbon/icons/battery-good-charging-symbolic.svg
new file mode 100644
index 0000000..0b54f56
--- /dev/null
+++ b/themes/carbon/icons/battery-good-charging-symbolic.svg
@@ -0,0 +1,69 @@
+
+
diff --git a/themes/carbon/icons/battery-good-symbolic.svg b/themes/carbon/icons/battery-good-symbolic.svg
new file mode 100644
index 0000000..b55a8e0
--- /dev/null
+++ b/themes/carbon/icons/battery-good-symbolic.svg
@@ -0,0 +1,62 @@
+
+
diff --git a/themes/carbon/icons/battery-low-charging-symbolic.svg b/themes/carbon/icons/battery-low-charging-symbolic.svg
new file mode 100644
index 0000000..56fb9cc
--- /dev/null
+++ b/themes/carbon/icons/battery-low-charging-symbolic.svg
@@ -0,0 +1,71 @@
+
+
diff --git a/themes/carbon/icons/battery-low-symbolic.svg b/themes/carbon/icons/battery-low-symbolic.svg
new file mode 100644
index 0000000..ab50fc2
--- /dev/null
+++ b/themes/carbon/icons/battery-low-symbolic.svg
@@ -0,0 +1,62 @@
+
+
diff --git a/themes/carbon/icons/battery-missing-symbolic.svg b/themes/carbon/icons/battery-missing-symbolic.svg
new file mode 100644
index 0000000..f96c4b2
--- /dev/null
+++ b/themes/carbon/icons/battery-missing-symbolic.svg
@@ -0,0 +1,69 @@
+
+
diff --git a/themes/carbon/icons/lock.svg b/themes/carbon/icons/lock.svg
new file mode 100644
index 0000000..974b65c
--- /dev/null
+++ b/themes/carbon/icons/lock.svg
@@ -0,0 +1,12 @@
+
diff --git a/themes/carbon/icons/mail.svg b/themes/carbon/icons/mail.svg
new file mode 100644
index 0000000..59d2196
--- /dev/null
+++ b/themes/carbon/icons/mail.svg
@@ -0,0 +1,167 @@
+
+
+
+
diff --git a/themes/carbon/icons/shutdown.svg b/themes/carbon/icons/shutdown.svg
new file mode 100644
index 0000000..affd2a5
--- /dev/null
+++ b/themes/carbon/icons/shutdown.svg
@@ -0,0 +1,12 @@
+
diff --git a/themes/carbon/icons/suspend.svg b/themes/carbon/icons/suspend.svg
new file mode 100644
index 0000000..d64205d
--- /dev/null
+++ b/themes/carbon/icons/suspend.svg
@@ -0,0 +1,13 @@
+
diff --git a/themes/carbon/icons/volume-high.svg b/themes/carbon/icons/volume-high.svg
new file mode 100644
index 0000000..486ec0b
--- /dev/null
+++ b/themes/carbon/icons/volume-high.svg
@@ -0,0 +1,15 @@
+
diff --git a/themes/carbon/icons/volume-low.svg b/themes/carbon/icons/volume-low.svg
new file mode 100644
index 0000000..824a3f6
--- /dev/null
+++ b/themes/carbon/icons/volume-low.svg
@@ -0,0 +1,14 @@
+
diff --git a/themes/carbon/icons/volume-medium.svg b/themes/carbon/icons/volume-medium.svg
new file mode 100644
index 0000000..5e6dd1f
--- /dev/null
+++ b/themes/carbon/icons/volume-medium.svg
@@ -0,0 +1,15 @@
+
diff --git a/themes/carbon/icons/volume-muted.svg b/themes/carbon/icons/volume-muted.svg
new file mode 100644
index 0000000..bf8f17a
--- /dev/null
+++ b/themes/carbon/icons/volume-muted.svg
@@ -0,0 +1,23 @@
+
diff --git a/themes/carbon/icons/wallpaper.svg b/themes/carbon/icons/wallpaper.svg
new file mode 100644
index 0000000..67ede24
--- /dev/null
+++ b/themes/carbon/icons/wallpaper.svg
@@ -0,0 +1,127 @@
+
+
+
+
diff --git a/themes/carbon/layouts/cornerne.png b/themes/carbon/layouts/cornerne.png
new file mode 100644
index 0000000..c85bd56
Binary files /dev/null and b/themes/carbon/layouts/cornerne.png differ
diff --git a/themes/carbon/layouts/cornernew.png b/themes/carbon/layouts/cornernew.png
new file mode 100644
index 0000000..c3fd986
Binary files /dev/null and b/themes/carbon/layouts/cornernew.png differ
diff --git a/themes/carbon/layouts/cornernw.png b/themes/carbon/layouts/cornernw.png
new file mode 100644
index 0000000..dfe78b3
Binary files /dev/null and b/themes/carbon/layouts/cornernw.png differ
diff --git a/themes/carbon/layouts/cornernww.png b/themes/carbon/layouts/cornernww.png
new file mode 100644
index 0000000..f489010
Binary files /dev/null and b/themes/carbon/layouts/cornernww.png differ
diff --git a/themes/carbon/layouts/cornerse.png b/themes/carbon/layouts/cornerse.png
new file mode 100644
index 0000000..023ae79
Binary files /dev/null and b/themes/carbon/layouts/cornerse.png differ
diff --git a/themes/carbon/layouts/cornersew.png b/themes/carbon/layouts/cornersew.png
new file mode 100644
index 0000000..f7cfa1c
Binary files /dev/null and b/themes/carbon/layouts/cornersew.png differ
diff --git a/themes/carbon/layouts/cornersw.png b/themes/carbon/layouts/cornersw.png
new file mode 100644
index 0000000..c1453c9
Binary files /dev/null and b/themes/carbon/layouts/cornersw.png differ
diff --git a/themes/carbon/layouts/cornersww.png b/themes/carbon/layouts/cornersww.png
new file mode 100644
index 0000000..a65a043
Binary files /dev/null and b/themes/carbon/layouts/cornersww.png differ
diff --git a/themes/carbon/layouts/dwindle.png b/themes/carbon/layouts/dwindle.png
new file mode 100644
index 0000000..9902d22
Binary files /dev/null and b/themes/carbon/layouts/dwindle.png differ
diff --git a/themes/carbon/layouts/dwindlew.png b/themes/carbon/layouts/dwindlew.png
new file mode 100644
index 0000000..9199049
Binary files /dev/null and b/themes/carbon/layouts/dwindlew.png differ
diff --git a/themes/carbon/layouts/fairh.png b/themes/carbon/layouts/fairh.png
new file mode 100644
index 0000000..d41deea
Binary files /dev/null and b/themes/carbon/layouts/fairh.png differ
diff --git a/themes/carbon/layouts/fairhw.png b/themes/carbon/layouts/fairhw.png
new file mode 100644
index 0000000..bb50e3a
Binary files /dev/null and b/themes/carbon/layouts/fairhw.png differ
diff --git a/themes/carbon/layouts/fairv.png b/themes/carbon/layouts/fairv.png
new file mode 100644
index 0000000..f5f0288
Binary files /dev/null and b/themes/carbon/layouts/fairv.png differ
diff --git a/themes/carbon/layouts/fairvw.png b/themes/carbon/layouts/fairvw.png
new file mode 100644
index 0000000..4f4ed52
Binary files /dev/null and b/themes/carbon/layouts/fairvw.png differ
diff --git a/themes/carbon/layouts/floating.png b/themes/carbon/layouts/floating.png
new file mode 100644
index 0000000..b8061a0
Binary files /dev/null and b/themes/carbon/layouts/floating.png differ
diff --git a/themes/carbon/layouts/floatingw.png b/themes/carbon/layouts/floatingw.png
new file mode 100644
index 0000000..4815894
Binary files /dev/null and b/themes/carbon/layouts/floatingw.png differ
diff --git a/themes/carbon/layouts/fullscreen.png b/themes/carbon/layouts/fullscreen.png
new file mode 100644
index 0000000..d02f6fc
Binary files /dev/null and b/themes/carbon/layouts/fullscreen.png differ
diff --git a/themes/carbon/layouts/fullscreenw.png b/themes/carbon/layouts/fullscreenw.png
new file mode 100644
index 0000000..5c35bfa
Binary files /dev/null and b/themes/carbon/layouts/fullscreenw.png differ
diff --git a/themes/carbon/layouts/magnifier.png b/themes/carbon/layouts/magnifier.png
new file mode 100644
index 0000000..2925414
Binary files /dev/null and b/themes/carbon/layouts/magnifier.png differ
diff --git a/themes/carbon/layouts/magnifierw.png b/themes/carbon/layouts/magnifierw.png
new file mode 100644
index 0000000..6209556
Binary files /dev/null and b/themes/carbon/layouts/magnifierw.png differ
diff --git a/themes/carbon/layouts/max.png b/themes/carbon/layouts/max.png
new file mode 100644
index 0000000..8d20844
Binary files /dev/null and b/themes/carbon/layouts/max.png differ
diff --git a/themes/carbon/layouts/maxw.png b/themes/carbon/layouts/maxw.png
new file mode 100644
index 0000000..85f5ce3
Binary files /dev/null and b/themes/carbon/layouts/maxw.png differ
diff --git a/themes/carbon/layouts/spiral.png b/themes/carbon/layouts/spiral.png
new file mode 100644
index 0000000..d9434be
Binary files /dev/null and b/themes/carbon/layouts/spiral.png differ
diff --git a/themes/carbon/layouts/spiralw.png b/themes/carbon/layouts/spiralw.png
new file mode 100644
index 0000000..b78dd86
Binary files /dev/null and b/themes/carbon/layouts/spiralw.png differ
diff --git a/themes/carbon/layouts/tile.png b/themes/carbon/layouts/tile.png
new file mode 100644
index 0000000..3ede21e
Binary files /dev/null and b/themes/carbon/layouts/tile.png differ
diff --git a/themes/carbon/layouts/tilebottom.png b/themes/carbon/layouts/tilebottom.png
new file mode 100644
index 0000000..6f8c257
Binary files /dev/null and b/themes/carbon/layouts/tilebottom.png differ
diff --git a/themes/carbon/layouts/tilebottomw.png b/themes/carbon/layouts/tilebottomw.png
new file mode 100644
index 0000000..a1de7b2
Binary files /dev/null and b/themes/carbon/layouts/tilebottomw.png differ
diff --git a/themes/carbon/layouts/tileleft.png b/themes/carbon/layouts/tileleft.png
new file mode 100644
index 0000000..31d6870
Binary files /dev/null and b/themes/carbon/layouts/tileleft.png differ
diff --git a/themes/carbon/layouts/tileleftw.png b/themes/carbon/layouts/tileleftw.png
new file mode 100644
index 0000000..cf14c25
Binary files /dev/null and b/themes/carbon/layouts/tileleftw.png differ
diff --git a/themes/carbon/layouts/tiletop.png b/themes/carbon/layouts/tiletop.png
new file mode 100644
index 0000000..98cade2
Binary files /dev/null and b/themes/carbon/layouts/tiletop.png differ
diff --git a/themes/carbon/layouts/tiletopw.png b/themes/carbon/layouts/tiletopw.png
new file mode 100644
index 0000000..d1d0872
Binary files /dev/null and b/themes/carbon/layouts/tiletopw.png differ
diff --git a/themes/carbon/layouts/tilew.png b/themes/carbon/layouts/tilew.png
new file mode 100644
index 0000000..fde2ca4
Binary files /dev/null and b/themes/carbon/layouts/tilew.png differ
diff --git a/themes/carbon/menu.lua b/themes/carbon/menu.lua
new file mode 100644
index 0000000..34071bb
--- /dev/null
+++ b/themes/carbon/menu.lua
@@ -0,0 +1,117 @@
+local temp = io.open(os.getenv("HOME").."/.config/awesome/file.lua","r")
+local filehelper = loadstring(temp:read("*a"))()
+temp:close()
+--get a giant list of xdg data
+log = function(...)
+ local params = {}
+ for k,v in pairs({...}) do
+ params[#params+1] = tostring(v)
+ end
+ local str = table.concat(params," ")
+ filehelper.write("./awesome_log",filehelper.read("./awesome_log").."\n"..str)
+end
+local function parse_xdg()
+ local output = {}
+ local temp = io.popen("find /usr/share/applications","r")
+ local file_table = temp:read("*a")
+ temp:close()
+ local temp = io.popen("find "..os.getenv("HOME").."/.local/share/applications","r")
+ file_table = file_table.."\n"..temp:read("*a")
+ temp:close()
+ local lines = {}
+ file_table:gsub("[^\n]+",function(capt) lines[#lines+1] = capt end)
+ for k,v in pairs(lines) do
+ local data = filehelper.read(v,"*a")
+ --check if its an app, if it has a name, and if it's even readable.
+ if data and data:match("Type=([^\n]+)") and data:match("Type=([^\n]+)") == "Application" and data:match("Name=([^\n]+)") then
+ --get the tags
+ local tags = data:match("Categories=([^\n]+)")
+ local categories = {}
+ if tags then
+ tags:gsub("[^;]+",function(capt) categories[#categories+1] = capt:match("%w+") end)
+ end
+ --remove a bunch of useless category extensions
+ while true do
+ local occurences = 0
+ local whitelist = {
+ Network = true,
+ Game = true,
+ Education = true,
+ Development = true,
+ Graphics = true,
+ Utility = true,
+ System = true,
+ AudioVideo = true,
+ Office = true,
+ Settings = true,
+ }
+ for k,v in pairs(categories) do
+ if not whitelist[v] then
+ table.remove(categories,k)
+ occurences = occurences + 1
+ end
+ end
+ if occurences == 0 then
+ break
+ end
+ end
+ --add this to the end so it'll be detected like a path.
+ categories[#categories+1]=data:match("Name=([^\n]+)")
+ output[#output+1] = {data:match("Exec=([^\n%%]+)"),categories = categories}
+ end
+ end
+ return output
+end
+
+--fuck
+local function sort_by_categories(input)
+ local output = {}
+ assert(type(input) == "table")
+ for k,v in pairs(input) do
+ local categories = v.categories
+ local function sort(tab,list,value)
+ local found = nil
+ for k,v in pairs(tab) do
+ if v[1] == list[1] then
+ found = v
+ end
+ end
+ if not found then
+ if list[2] then
+ tab[#tab+1] = {list[1],{}}
+ found = tab[#tab]
+ elseif list[1] then
+ tab[#tab+1] = {list[1],value}
+ found = tab[#tab]
+ end
+ end
+ if list[2] then
+ table.remove(list,1)
+ found[2] = sort(found[2],list,value)
+ end
+ return tab
+ end
+ output = sort(output,categories,v[1])
+ end
+ return output
+end
+
+local function sort_untagged(input)
+ local output = input
+ local other = {}
+ for k,v in pairs(input) do
+ log(k,v[1],v[2])
+ if type(v[2]) == "string" then
+ other[#other+1] = {v[1],v[2]}
+ output[k] = nil
+ end
+ end
+ local new_output = {}
+ for k,v in pairs(output) do
+ new_output[#new_output+1] = v
+ end
+ new_output[#new_output+1] = {"Other",other}
+ return new_output
+end
+
+return sort_untagged(sort_by_categories(parse_xdg()))
diff --git a/themes/carbon/submenu.png b/themes/carbon/submenu.png
new file mode 100644
index 0000000..b2778e2
Binary files /dev/null and b/themes/carbon/submenu.png differ
diff --git a/themes/carbon/taglist/squarefw.png b/themes/carbon/taglist/squarefw.png
new file mode 100644
index 0000000..2a86430
Binary files /dev/null and b/themes/carbon/taglist/squarefw.png differ
diff --git a/themes/carbon/taglist/squarew.png b/themes/carbon/taglist/squarew.png
new file mode 100644
index 0000000..913f2ca
Binary files /dev/null and b/themes/carbon/taglist/squarew.png differ
diff --git a/themes/carbon/theme.lua b/themes/carbon/theme.lua
new file mode 100644
index 0000000..94f3e28
--- /dev/null
+++ b/themes/carbon/theme.lua
@@ -0,0 +1,158 @@
+local theme_assets = require("beautiful.theme_assets")
+local xresources = require("beautiful.xresources")
+local dpi = xresources.apply_dpi
+
+local theme = {}
+
+theme.name = "carbon"
+
+theme.font = "Ubuntu Regular 9"
+theme.unitybar_width = dpi(55)
+theme.icon_rounding = 5
+theme.tasklist_button_shape_border_width = dpi(1)
+theme.tasklist_button_shape_border_color = "#262626AA"
+theme.launcher_button_shape_border_width = dpi(1)
+theme.launcher_button_shape_border_color = "#262626AA"
+theme.launcher_button_size = 44
+theme.tasklist_button_size = 44
+theme.macbar_rounding = 5
+theme.macbar_height = 45
+theme.menu_button_inner_margin = 2
+theme.container_rounding = 4
+theme.button_rounding = 4
+theme.bg_normal = "#181819"
+theme.bg_focus = "#3E3E3E"
+theme.bg_urgent = "#2E2E2E"
+theme.bg_minimize = "#2E2E2E"
+theme.bg_systray = theme.bg_normal
+
+theme.fg_normal = "#e1dec7"
+theme.fg_focus = "#e1dec7"
+theme.fg_urgent = "#e1dec7"
+theme.fg_minimize = "#e1dec7"
+
+theme.useless_gap = dpi(10)
+theme.border_width = dpi(1)
+theme.border_normal = theme.bg_normal
+theme.border_focus = theme.bg_focus
+theme.border_marked = theme.bg_marked
+
+-- There are other variable sets
+-- overriding the default one when
+-- defined, the sets are:
+-- taglist_[bg|fg]_[focus|urgent|occupied|empty|volatile]
+-- tasklist_[bg|fg]_[focus|urgent]
+-- titlebar_[bg|fg]_[normal|focus]
+-- tooltip_[font|opacity|fg_color|bg_color|border_width|border_color]
+-- mouse_finder_[color|timeout|animate_timeout|radius|factor]
+-- prompt_[fg|bg|fg_cursor|bg_cursor|font]
+-- hotkeys_[bg|fg|border_width|border_color|shape|opacity|modifiers_fg|label_bg|label_fg|group_margin|font|description_font]
+-- Example:
+--theme.taglist_bg_focus = "#ff0000"
+theme.hotkeys_border_color = "#262626"
+theme.hotkeys_opacity = 0.2
+
+theme.titlebar_bg_focus = {
+ type = "linear",
+ from = { 0, 15 },
+ to = { 0, 0 },
+ stops = { { 0, "#3C3C3C"} , { 1 , "#424242"} }
+}
+
+theme.titlebar_bg_normal = {
+ type = "linear",
+ from = { 0, 15 },
+ to = { 0, 0 },
+ stops = { { 0, "#161617"} , { 1 , "#222223"} }
+
+}
+theme.topbar_bg = theme.titlebar_bg_normal
+theme.titlebar_rounding = 6
+
+-- Generate taglist squares:
+local taglist_square_size = dpi(4)
+theme.taglist_squares_sel = theme_assets.taglist_squares_sel(
+ taglist_square_size, theme.fg_normal
+)
+theme.taglist_squares_unsel = theme_assets.taglist_squares_unsel(
+ taglist_square_size, theme.fg_normal
+)
+
+-- Variables set for theming notifications:
+-- notification_font
+-- not1ification_[bg|fg]
+-- notification_[width|height|margin]
+-- notification_[border_color|border_width|shape|opacity]
+theme.notification_width = dpi(250)
+theme.notification_height = dpi(80)
+-- Variables set for theming the menu:
+-- menu_[bg|fg]_[normal|focus]
+-- menu_[border_color|border_width]
+theme.menu_submenu_icon = global.themes_dir..theme.name.."/submenu.png"
+theme.menu_height = dpi(18)
+theme.menu_width = dpi(140)
+
+-- You can add as many variables as
+-- you wish and access them by using
+-- beautiful.variable in your rc.lua
+--theme.bg_widget = "#cc0000"
+
+-- Define the image to load
+theme.titlebar_close_button_normal = global.themes_dir..theme.name.."/titlebar/close_normal.png"
+theme.titlebar_close_button_focus = global.themes_dir..theme.name.."/titlebar/close_focus.png"
+
+theme.titlebar_minimize_button_normal = global.themes_dir..theme.name.."/titlebar/minimize_normal.png"
+theme.titlebar_minimize_button_focus = global.themes_dir..theme.name.."/titlebar/minimize_focus.png"
+
+theme.titlebar_ontop_button_normal_inactive = global.themes_dir..theme.name.."/titlebar/ontop_normal_inactive.png"
+theme.titlebar_ontop_button_focus_inactive = global.themes_dir..theme.name.."/titlebar/ontop_focus_inactive.png"
+theme.titlebar_ontop_button_normal_active = global.themes_dir..theme.name.."/titlebar/ontop_normal_active.png"
+theme.titlebar_ontop_button_focus_active = global.themes_dir..theme.name.."/titlebar/ontop_focus_active.png"
+
+theme.titlebar_sticky_button_normal_inactive = global.themes_dir..theme.name.."/titlebar/sticky_normal_inactive.png"
+theme.titlebar_sticky_button_focus_inactive = global.themes_dir..theme.name.."/titlebar/sticky_focus_inactive.png"
+theme.titlebar_sticky_button_normal_active = global.themes_dir..theme.name.."/titlebar/sticky_normal_active.png"
+theme.titlebar_sticky_button_focus_active = global.themes_dir..theme.name.."/titlebar/sticky_focus_active.png"
+
+theme.titlebar_floating_button_normal_inactive = global.themes_dir..theme.name.."/titlebar/floating_normal_inactive.png"
+theme.titlebar_floating_button_focus_inactive = global.themes_dir..theme.name.."/titlebar/floating_focus_inactive.png"
+theme.titlebar_floating_button_normal_active = global.themes_dir..theme.name.."/titlebar/floating_normal_active.png"
+theme.titlebar_floating_button_focus_active = global.themes_dir..theme.name.."/titlebar/floating_focus_active.png"
+
+theme.titlebar_maximized_button_normal_inactive = global.themes_dir..theme.name.."/titlebar/maximized_normal_inactive.png"
+theme.titlebar_maximized_button_focus_inactive = global.themes_dir..theme.name.."/titlebar/maximized_focus_inactive.png"
+theme.titlebar_maximized_button_normal_active = global.themes_dir..theme.name.."/titlebar/maximized_normal_active.png"
+theme.titlebar_maximized_button_focus_active = global.themes_dir..theme.name.."/titlebar/maximized_focus_active.png"
+
+theme.wallpaper = global.themes_dir..theme.name.."/background.png"
+
+-- You can use your own layout icons like this:
+theme.layout_fairh = global.themes_dir..theme.name.."/layouts/fairhw.png"
+theme.layout_fairv = global.themes_dir..theme.name.."/layouts/fairvw.png"
+theme.layout_floating = global.themes_dir..theme.name.."/layouts/floatingw.png"
+theme.layout_magnifier = global.themes_dir..theme.name.."/layouts/magnifierw.png"
+theme.layout_max = global.themes_dir..theme.name.."/layouts/maxw.png"
+theme.layout_fullscreen = global.themes_dir..theme.name.."/layouts/fullscreenw.png"
+theme.layout_tilebottom = global.themes_dir..theme.name.."/layouts/tilebottomw.png"
+theme.layout_tileleft = global.themes_dir..theme.name.."/layouts/tileleftw.png"
+theme.layout_tile = global.themes_dir..theme.name.."/layouts/tilew.png"
+theme.layout_tiletop = global.themes_dir..theme.name.."/layouts/tiletopw.png"
+theme.layout_spiral = global.themes_dir..theme.name.."/layouts/spiralw.png"
+theme.layout_dwindle = global.themes_dir..theme.name.."/layouts/dwindlew.png"
+theme.layout_cornernw = global.themes_dir..theme.name.."/layouts/cornernww.png"
+theme.layout_cornerne = global.themes_dir..theme.name.."/layouts/cornernew.png"
+theme.layout_cornersw = global.themes_dir..theme.name.."/layouts/cornersww.png"
+theme.layout_cornerse = global.themes_dir..theme.name.."/layouts/cornersew.png"
+
+-- Generate Awesome icon:
+theme.awesome_icon = theme_assets.awesome_icon(
+ theme.menu_height, theme.bg_focus, theme.fg_focus
+)
+
+-- Define the icon theme for application icons. If not set then the icons
+-- from /usr/share/icons and /usr/share/icons/hicolor will be used.
+theme.icon_theme = "Adwaita"
+
+return theme
+
+-- vim: filetype=lua:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:textwidth=80
diff --git a/themes/carbon/titlebar/close_focus.png b/themes/carbon/titlebar/close_focus.png
new file mode 100644
index 0000000..01ef825
Binary files /dev/null and b/themes/carbon/titlebar/close_focus.png differ
diff --git a/themes/carbon/titlebar/close_normal.png b/themes/carbon/titlebar/close_normal.png
new file mode 100644
index 0000000..5448ed8
Binary files /dev/null and b/themes/carbon/titlebar/close_normal.png differ
diff --git a/themes/carbon/titlebar/floating_focus_active.png b/themes/carbon/titlebar/floating_focus_active.png
new file mode 100644
index 0000000..82dcc7c
Binary files /dev/null and b/themes/carbon/titlebar/floating_focus_active.png differ
diff --git a/themes/carbon/titlebar/floating_focus_inactive.png b/themes/carbon/titlebar/floating_focus_inactive.png
new file mode 100644
index 0000000..c19ba80
Binary files /dev/null and b/themes/carbon/titlebar/floating_focus_inactive.png differ
diff --git a/themes/carbon/titlebar/floating_normal_active.png b/themes/carbon/titlebar/floating_normal_active.png
new file mode 100644
index 0000000..62342d1
Binary files /dev/null and b/themes/carbon/titlebar/floating_normal_active.png differ
diff --git a/themes/carbon/titlebar/floating_normal_inactive.png b/themes/carbon/titlebar/floating_normal_inactive.png
new file mode 100644
index 0000000..e2bbdfa
Binary files /dev/null and b/themes/carbon/titlebar/floating_normal_inactive.png differ
diff --git a/themes/carbon/titlebar/maximized_focus_active.png b/themes/carbon/titlebar/maximized_focus_active.png
new file mode 100644
index 0000000..d7dffd7
Binary files /dev/null and b/themes/carbon/titlebar/maximized_focus_active.png differ
diff --git a/themes/carbon/titlebar/maximized_focus_inactive.png b/themes/carbon/titlebar/maximized_focus_inactive.png
new file mode 100644
index 0000000..844389f
Binary files /dev/null and b/themes/carbon/titlebar/maximized_focus_inactive.png differ
diff --git a/themes/carbon/titlebar/maximized_normal_active.png b/themes/carbon/titlebar/maximized_normal_active.png
new file mode 100644
index 0000000..a705f81
Binary files /dev/null and b/themes/carbon/titlebar/maximized_normal_active.png differ
diff --git a/themes/carbon/titlebar/maximized_normal_inactive.png b/themes/carbon/titlebar/maximized_normal_inactive.png
new file mode 100644
index 0000000..4c1ab1f
Binary files /dev/null and b/themes/carbon/titlebar/maximized_normal_inactive.png differ
diff --git a/themes/carbon/titlebar/minimize_focus.png b/themes/carbon/titlebar/minimize_focus.png
new file mode 100644
index 0000000..caaceb2
Binary files /dev/null and b/themes/carbon/titlebar/minimize_focus.png differ
diff --git a/themes/carbon/titlebar/minimize_normal.png b/themes/carbon/titlebar/minimize_normal.png
new file mode 100644
index 0000000..36621d0
Binary files /dev/null and b/themes/carbon/titlebar/minimize_normal.png differ
diff --git a/themes/carbon/titlebar/ontop_focus_active.png b/themes/carbon/titlebar/ontop_focus_active.png
new file mode 100644
index 0000000..312c00b
Binary files /dev/null and b/themes/carbon/titlebar/ontop_focus_active.png differ
diff --git a/themes/carbon/titlebar/ontop_focus_inactive.png b/themes/carbon/titlebar/ontop_focus_inactive.png
new file mode 100644
index 0000000..a48e1c5
Binary files /dev/null and b/themes/carbon/titlebar/ontop_focus_inactive.png differ
diff --git a/themes/carbon/titlebar/ontop_normal_active.png b/themes/carbon/titlebar/ontop_normal_active.png
new file mode 100644
index 0000000..117a203
Binary files /dev/null and b/themes/carbon/titlebar/ontop_normal_active.png differ
diff --git a/themes/carbon/titlebar/ontop_normal_inactive.png b/themes/carbon/titlebar/ontop_normal_inactive.png
new file mode 100644
index 0000000..d3a10c8
Binary files /dev/null and b/themes/carbon/titlebar/ontop_normal_inactive.png differ
diff --git a/themes/carbon/titlebar/sticky_focus_active.png b/themes/carbon/titlebar/sticky_focus_active.png
new file mode 100644
index 0000000..814499b
Binary files /dev/null and b/themes/carbon/titlebar/sticky_focus_active.png differ
diff --git a/themes/carbon/titlebar/sticky_focus_inactive.png b/themes/carbon/titlebar/sticky_focus_inactive.png
new file mode 100644
index 0000000..21b000d
Binary files /dev/null and b/themes/carbon/titlebar/sticky_focus_inactive.png differ
diff --git a/themes/carbon/titlebar/sticky_normal_active.png b/themes/carbon/titlebar/sticky_normal_active.png
new file mode 100644
index 0000000..bdb5595
Binary files /dev/null and b/themes/carbon/titlebar/sticky_normal_active.png differ
diff --git a/themes/carbon/titlebar/sticky_normal_inactive.png b/themes/carbon/titlebar/sticky_normal_inactive.png
new file mode 100644
index 0000000..a96b9b1
Binary files /dev/null and b/themes/carbon/titlebar/sticky_normal_inactive.png differ