summaryrefslogtreecommitdiffstats
path: root/remoting/host
diff options
context:
space:
mode:
authorjamiewalch@chromium.org <jamiewalch@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-08-23 01:42:47 +0000
committerjamiewalch@chromium.org <jamiewalch@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-08-23 01:42:47 +0000
commitfd7144ada8809eac45c61cbc9eb32f9aaa94368f (patch)
tree119db84b2aaa6ea2797b1ab925ff6315079b7063 /remoting/host
parentc026d0b1222dbdcbe6785d4b37af1d77940df095 (diff)
downloadchromium_src-fd7144ada8809eac45c61cbc9eb32f9aaa94368f.zip
chromium_src-fd7144ada8809eac45c61cbc9eb32f9aaa94368f.tar.gz
chromium_src-fd7144ada8809eac45c61cbc9eb32f9aaa94368f.tar.bz2
Native messaging installer for Mac.
Since Packages doesn't allow for a different source and destination file name, I decided to make the build create the native messaging manifest under the name it eventually has under Linux, which entailed a small change to the Linux installer as well. One thing I'm not entirely happy about with this CL is that the Mac is installed as org.chromium.chromoting, whereas the native messaging component is called com.google.chome.remote_desktop. It would be nice if we could use the same name for both. For this CL, I think keeping the two different names is best for the sake of keeping it small. BUG=173509 Review URL: https://chromiumcodereview.appspot.com/22901019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@219180 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'remoting/host')
-rw-r--r--remoting/host/constants_mac.cc4
-rw-r--r--remoting/host/constants_mac.h3
-rw-r--r--remoting/host/installer/linux/Makefile5
-rw-r--r--remoting/host/installer/mac/ChromotingHostService.pkgproj67
-rw-r--r--remoting/host/installer/mac/uninstaller/remoting_uninstaller.mm1
5 files changed, 77 insertions, 3 deletions
diff --git a/remoting/host/constants_mac.cc b/remoting/host/constants_mac.cc
index 9b79384..3b48ca0 100644
--- a/remoting/host/constants_mac.cc
+++ b/remoting/host/constants_mac.cc
@@ -36,6 +36,10 @@ const char kServicePlistPath[] = LAUNCH_AGENTS_DIR SERVICE_NAME ".plist";
const char kLogFilePath[] = LOG_DIR SERVICE_NAME ".log";
const char kLogFileConfigPath[] = LOG_CONFIG_DIR SERVICE_NAME ".conf";
+const char kNativeMessagingManifestPath[] =
+ "/Library/Google/Chrome/NativeMessagingHosts/"
+ "com.google.chrome.remote_desktop.json";
+
const char kBrandedUninstallerPath[] = APPLICATIONS_DIR
"Chrome Remote Desktop Host Uninstaller.app";
const char kUnbrandedUninstallerPath[] = APPLICATIONS_DIR
diff --git a/remoting/host/constants_mac.h b/remoting/host/constants_mac.h
index ac288e5..5d131d2 100644
--- a/remoting/host/constants_mac.h
+++ b/remoting/host/constants_mac.h
@@ -52,6 +52,9 @@ extern const char kLogFilePath[];
// Path to the log config file
extern const char kLogFileConfigPath[];
+// Path to the native messaging host manifest
+extern const char kNativeMessagingManifestPath[];
+
// The branded and unbranded names for the uninstaller.
// This is the only file that changes names based on branding. We define both
// because we want local dev builds to be able to clean up both files.
diff --git a/remoting/host/installer/linux/Makefile b/remoting/host/installer/linux/Makefile
index 9fc36be..dd45d26 100644
--- a/remoting/host/installer/linux/Makefile
+++ b/remoting/host/installer/linux/Makefile
@@ -11,7 +11,6 @@ RELEASE = $(SRC)/out/Release
INSTALL_DIR = $(DESTDIR)/opt/google/chrome-remote-desktop
CHROME_MANIFEST_DIR = $(DESTDIR)/etc/opt/chrome/native-messaging-hosts
-MANIFEST = $(CHROME_MANIFEST_DIR)/com.google.chrome.remote_desktop.json
ME2ME_PROGNAME = $(RELEASE)/remoting_me2me_host
ME2ME_DEBUGFILE = $(ME2ME_PROGNAME).debug
@@ -30,8 +29,8 @@ install:
"$(INSTALL_DIR)/chrome-remote-desktop"
install "$(TOOLS)/is-remoting-session" "$(INSTALL_DIR)"
- install -T "$(RELEASE)/remoting/native_messaging_manifest.json" \
- -m 0644 "$(MANIFEST)"
+ install "$(RELEASE)/remoting/com.google.chrome.remote_desktop.json" \
+ -m 0644 "$(CHROME_MANIFEST_DIR)"
eu-strip -f "$(ME2ME_DEBUGFILE)" "$(ME2ME_PROGNAME)"
install "$(ME2ME_PROGNAME)" \
diff --git a/remoting/host/installer/mac/ChromotingHostService.pkgproj b/remoting/host/installer/mac/ChromotingHostService.pkgproj
index bc036f8..72ced50 100644
--- a/remoting/host/installer/mac/ChromotingHostService.pkgproj
+++ b/remoting/host/installer/mac/ChromotingHostService.pkgproj
@@ -164,6 +164,73 @@
</dict>
<dict>
<key>CHILDREN</key>
+ <array>
+ <dict>
+ <key>CHILDREN</key>
+ <array>
+ <dict>
+ <key>CHILDREN</key>
+ <array>
+ <dict>
+ <key>CHILDREN</key>
+ <array/>
+ <key>GID</key>
+ <integer>0</integer>
+ <key>PATH</key>
+ <string>Config/com.google.chrome.remote_desktop.json</string>
+ <key>PATH_TYPE</key>
+ <integer>1</integer>
+ <key>PERMISSIONS</key>
+ <integer>420</integer>
+ <key>TYPE</key>
+ <integer>3</integer>
+ <key>UID</key>
+ <integer>0</integer>
+ </dict>
+ </array>
+ <key>GID</key>
+ <integer>0</integer>
+ <key>PATH</key>
+ <string>NativeMessagingHosts</string>
+ <key>PATH_TYPE</key>
+ <integer>0</integer>
+ <key>PERMISSIONS</key>
+ <integer>493</integer>
+ <key>TYPE</key>
+ <integer>2</integer>
+ <key>UID</key>
+ <integer>0</integer>
+ </dict>
+ </array>
+ <key>GID</key>
+ <integer>0</integer>
+ <key>PATH</key>
+ <string>Chrome</string>
+ <key>PATH_TYPE</key>
+ <integer>0</integer>
+ <key>PERMISSIONS</key>
+ <integer>493</integer>
+ <key>TYPE</key>
+ <integer>2</integer>
+ <key>UID</key>
+ <integer>0</integer>
+ </dict>
+ </array>
+ <key>GID</key>
+ <integer>0</integer>
+ <key>PATH</key>
+ <string>Google</string>
+ <key>PATH_TYPE</key>
+ <integer>0</integer>
+ <key>PERMISSIONS</key>
+ <integer>493</integer>
+ <key>TYPE</key>
+ <integer>2</integer>
+ <key>UID</key>
+ <integer>0</integer>
+ </dict>
+ <dict>
+ <key>CHILDREN</key>
<array/>
<key>GID</key>
<integer>0</integer>
diff --git a/remoting/host/installer/mac/uninstaller/remoting_uninstaller.mm b/remoting/host/installer/mac/uninstaller/remoting_uninstaller.mm
index eb984d1..eec5e58 100644
--- a/remoting/host/installer/mac/uninstaller/remoting_uninstaller.mm
+++ b/remoting/host/installer/mac/uninstaller/remoting_uninstaller.mm
@@ -143,6 +143,7 @@ const char kKeystonePID[] = "com.google.chrome_remote_desktop";
[self sudoDelete:remoting::kPrefPaneFilePath usingAuth:authRef];
[self sudoDelete:remoting::kLogFilePath usingAuth:authRef];
[self sudoDelete:remoting::kLogFileConfigPath usingAuth:authRef];
+ [self sudoDelete:remoting::kNativeMessagingManifestPath usingAuth:authRef];
[self sudoDelete:remoting::kBrandedUninstallerPath usingAuth:authRef];
[self sudoDelete:remoting::kUnbrandedUninstallerPath usingAuth:authRef];