diff --git a/indra/newview/icons/beta/secondlife_256.BMP b/indra/newview/icons/beta/secondlife_256.BMP
new file mode 100644
index 0000000000000000000000000000000000000000..97bd67d3d65316162318994cda2752302acf2f7a
Binary files /dev/null and b/indra/newview/icons/beta/secondlife_256.BMP differ
diff --git a/indra/newview/icons/development/secondlife_256.BMP b/indra/newview/icons/development/secondlife_256.BMP
new file mode 100644
index 0000000000000000000000000000000000000000..174b22319a273d57d22c6a47a7a93038e45dd348
Binary files /dev/null and b/indra/newview/icons/development/secondlife_256.BMP differ
diff --git a/indra/newview/icons/project/secondlife_256.BMP b/indra/newview/icons/project/secondlife_256.BMP
new file mode 100644
index 0000000000000000000000000000000000000000..cd890725f8a46e6821f213db8fa7dd534bd621cb
Binary files /dev/null and b/indra/newview/icons/project/secondlife_256.BMP differ
diff --git a/indra/newview/icons/release/secondlife_256.BMP b/indra/newview/icons/release/secondlife_256.BMP
new file mode 100644
index 0000000000000000000000000000000000000000..74deedd7d31a7f01587ef926889abf5f258e6a46
Binary files /dev/null and b/indra/newview/icons/release/secondlife_256.BMP differ
diff --git a/indra/newview/icons/test/secondlife_256.BMP b/indra/newview/icons/test/secondlife_256.BMP
new file mode 100644
index 0000000000000000000000000000000000000000..e23fcfdbe9100662d03b67bdc4e6ca95e0a6ede1
Binary files /dev/null and b/indra/newview/icons/test/secondlife_256.BMP differ
diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py
index bdb18f5da5aaa95e047c034d9f944d4368e1633b..281db4ac8384b30fd55ccd354ac60b18dd3e22bd 100644
--- a/indra/newview/viewer_manifest.py
+++ b/indra/newview/viewer_manifest.py
@@ -148,10 +148,11 @@ def icon_path(self):
         channel_type=self.channel_lowerword()
         if channel_type == 'release' \
         or channel_type == 'beta' \
-        or channel_type == 'project' \
         or channel_type == 'development' \
         :
             icon_path += channel_type
+        elif re.match('project.*',channel_type) :
+            icon_path += 'project'
         else :
             icon_path += 'test'
         return icon_path
@@ -624,11 +625,7 @@ def construct(self):
 
                 icon_path = self.icon_path()
                 if self.prefix(src=icon_path, dst="") :
-                    test_path = os.path.join(self.get_src_prefix(), "secondlife.icns")
-                    if os.path.exists(test_path) :
-                        self.path("secondlife.icns")
-                    else :
-                        raise Exception("Icon not found '%s'" % test_path)
+                    self.path("secondlife.icns")
                     self.end_prefix(icon_path)
 
                 self.path("SecondLife.nib")
@@ -867,14 +864,6 @@ class LinuxManifest(ViewerManifest):
     def construct(self):
         super(LinuxManifest, self).construct()
         self.path("licenses-linux.txt","licenses.txt")
-        icon_path = self.icon_path()
-        if self.prefix(src=icon_path, dst="") :
-            test_path = os.path.join(self.get_src_prefix(), "secondlife_256.png")
-            if os.path.exists(test_path) :
-                self.path("secondlife_256.png","secondlife_icon.png")
-            else :
-                raise Exception("Icon not found '%s'" % test_path)
-            self.end_prefix(icon_path)
         if self.prefix("linux_tools", dst=""):
             self.path("client-readme.txt","README-linux.txt")
             self.path("client-readme-voice.txt","README-linux-voice.txt")
@@ -900,6 +889,15 @@ def construct(self):
             # recurse
             self.end_prefix("res-sdl")
 
+        # Get the icons based on the channel
+        icon_path = self.icon_path()
+        if self.prefix(src=icon_path, dst="") :
+            self.path("secondlife_256.png","secondlife_icon.png")
+            if self.prefix(src="",dst="res-sdl") :
+                self.path("secondlife_256.BMP","ll_icon.BMP")
+                self.end_prefix("res-sdl")
+            self.end_prefix(icon_path)
+
         self.path("../viewer_components/updater/scripts/linux/update_install", "bin/update_install")
 
         # plugins