diff --git a/packages/client-app/build/resources/linux/nylas.desktop.in b/packages/client-app/build/resources/linux/nylas-mail.desktop.in similarity index 86% rename from packages/client-app/build/resources/linux/nylas.desktop.in rename to packages/client-app/build/resources/linux/nylas-mail.desktop.in index 950a2ef4f..fe6d68f2e 100644 --- a/packages/client-app/build/resources/linux/nylas.desktop.in +++ b/packages/client-app/build/resources/linux/nylas-mail.desktop.in @@ -2,8 +2,8 @@ Name=<%= productName %> Comment=<%= description %> GenericName=<%= productName %> -Exec=<%= linuxShareDir %>/nylas %U -Icon=nylas +Exec=/usr/bin/nylas-mail %U +Icon=nylas-mail Type=Application StartupNotify=true StartupWMClass=<%= productName %> diff --git a/packages/client-app/build/resources/linux/nylas.sh b/packages/client-app/build/resources/linux/nylas.sh deleted file mode 100755 index 6761458a9..000000000 --- a/packages/client-app/build/resources/linux/nylas.sh +++ /dev/null @@ -1,115 +0,0 @@ -#!/bin/bash - -if [ "$(uname)" == 'Darwin' ]; then - OS='Mac' -elif [ "$(expr substr $(uname -s) 1 5)" == 'Linux' ]; then - OS='Linux' -elif [ "$(expr substr $(uname -s) 1 10)" == 'MINGW32_NT' ]; then - OS='Cygwin' -else - echo "Your platform ($(uname -a)) is not supported." - exit 1 -fi - -while getopts ":wtfvh-:" opt; do - case "$opt" in - -) - case "${OPTARG}" in - wait) - WAIT=1 - ;; - help|version) - REDIRECT_STDERR=1 - EXPECT_OUTPUT=1 - ;; - foreground|test) - EXPECT_OUTPUT=1 - ;; - esac - ;; - w) - WAIT=1 - ;; - h|v) - REDIRECT_STDERR=1 - EXPECT_OUTPUT=1 - ;; - f|t) - EXPECT_OUTPUT=1 - ;; - esac -done - -if [ $REDIRECT_STDERR ]; then - exec 2> /dev/null -fi - -if [ $EXPECT_OUTPUT ]; then - export ELECTRON_ENABLE_LOGGING=1 -fi - -if [ $OS == 'Mac' ]; then - NYLAS_APP_NAME="Nylas Mail.app" - - if [ -z "${NYLAS_PATH}" ]; then - # If NYLAS_PATH isnt set, check /Applications and then ~/Applications for Nylas Mail.app - if [ -x "/Applications/$NYLAS_APP_NAME" ]; then - NYLAS_PATH="/Applications" - elif [ -x "$HOME/Applications/$NYLAS_APP_NAME" ]; then - NYLAS_PATH="$HOME/Applications" - else - # We havent found an Nylas Mail.app, use spotlight to search for N1 - NYLAS_PATH="$(mdfind "kMDItemCFBundleIdentifier == 'com.nylas.nylas-mail'" | grep -v ShipIt | head -1 | xargs -0 dirname)" - - # Exit if N1 can't be found - if [ ! -x "$NYLAS_PATH/$NYLAS_APP_NAME" ]; then - echo "Cannot locate 'Nylas Mail.app', it is usually located in /Applications. Set the NYLAS_PATH environment variable to the directory containing 'Nylas Mail.app'." - exit 1 - fi - fi - fi - - if [ $EXPECT_OUTPUT ]; then - "$NYLAS_PATH/$NYLAS_APP_NAME/Contents/MacOS/Nylas" --executed-from="$(pwd)" --pid=$$ "$@" - exit $? - else - open -a "$NYLAS_PATH/$NYLAS_APP_NAME" -n --args --executed-from="$(pwd)" --pid=$$ --path-environment="$PATH" "$@" - fi -elif [ $OS == 'Linux' ]; then - SCRIPT=$(readlink -f "$0") - USR_DIRECTORY=$(readlink -f $(dirname $SCRIPT)/..) - - NYLAS_PATH="$USR_DIRECTORY/share/nylas/nylas-mail" - NYLAS_HOME="${NYLAS_HOME:-$HOME/.nylas-mail}" - mkdir -p "$NYLAS_HOME" - - : ${TMPDIR:=/tmp} - - [ -x "$NYLAS_PATH" ] || NYLAS_PATH="$TMPDIR/nylas-build/Nylas/nylas" - - if [ $EXPECT_OUTPUT ]; then - "$NYLAS_PATH" --executed-from="$(pwd)" --pid=$$ "$@" - exit $? - else - ( - nohup "$NYLAS_PATH" --executed-from="$(pwd)" --pid=$$ "$@" > "$NYLAS_HOME/nohup.out" 2>&1 - if [ $? -ne 0 ]; then - cat "$NYLAS_HOME/nohup.out" - exit $? - fi - ) & - fi -fi - -# Exits this process when N1 exits -on_die() { - exit 0 -} -trap 'on_die' SIGQUIT SIGTERM - -# If the wait flag is set, don't exit this process until N1 tells it to. -if [ $WAIT ]; then - while true; do - sleep 1 - done -fi diff --git a/packages/client-app/build/tasks/installer-linux-task.js b/packages/client-app/build/tasks/installer-linux-task.js index c4915363c..84c419a1c 100644 --- a/packages/client-app/build/tasks/installer-linux-task.js +++ b/packages/client-app/build/tasks/installer-linux-task.js @@ -59,7 +59,7 @@ module.exports = (grunt) => { writeFromTemplate(specInFilePath, templateData) // This populates nylas.desktop - const desktopInFilePath = path.join(linuxAssetsDir, 'nylas.desktop.in') + const desktopInFilePath = path.join(linuxAssetsDir, 'nylas-mail.desktop.in') writeFromTemplate(desktopInFilePath, templateData) const cmd = path.join('script', 'mkrpm') @@ -92,14 +92,14 @@ module.exports = (grunt) => { name: grunt.config('appJSON').name, description: grunt.config('appJSON').description, productName: grunt.config('appJSON').productName, - linuxShareDir: '/usr/share/nylas', + linuxShareDir: '/usr/share/nylas-mail', arch: arch, section: 'devel', maintainer: 'Nylas Team ', installedSize: installedSize, } writeFromTemplate(path.join(linuxAssetsDir, 'debian', 'control.in'), data) - writeFromTemplate(path.join(linuxAssetsDir, 'nylas.desktop.in'), data) + writeFromTemplate(path.join(linuxAssetsDir, 'nylas-mail.desktop.in'), data) const icon = path.join('build', 'resources', 'nylas.png') const cmd = path.join('script', 'mkdeb'); diff --git a/packages/client-app/package.json b/packages/client-app/package.json index a37b815f5..70c76c252 100644 --- a/packages/client-app/package.json +++ b/packages/client-app/package.json @@ -1,5 +1,5 @@ { - "name": "nylas", + "name": "nylas-mail", "productName": "Nylas Mail", "version": "1.0.28", "description": "The best email app for people and teams at work", diff --git a/packages/client-app/script/mkdeb b/packages/client-app/script/mkdeb index 3cb925ec7..fe9b00531 100755 --- a/packages/client-app/script/mkdeb +++ b/packages/client-app/script/mkdeb @@ -22,7 +22,7 @@ TARGET="$TARGET_ROOT/nylas-$VERSION-$ARCH" mkdir -m $FILE_MODE -p "$TARGET/usr" mkdir -m $FILE_MODE -p "$TARGET/usr/share" -cp -r "$APP_CONTENTS_DIRECTORY" "$TARGET/usr/share/nylas" +cp -r "$APP_CONTENTS_DIRECTORY" "$TARGET/usr/share/nylas-mail" mkdir -m $FILE_MODE -p "$TARGET/DEBIAN" cp "$OUTPUT_PATH/control" "$TARGET/DEBIAN/control" @@ -31,28 +31,28 @@ cp "$LINUX_ASSETS_DIRECTORY/debian/postinst" "$TARGET/DEBIAN/postinst" cp "$LINUX_ASSETS_DIRECTORY/debian/postrm" "$TARGET/DEBIAN/postrm" mkdir -m $FILE_MODE -p "$TARGET/usr/bin" -cp "$LINUX_ASSETS_DIRECTORY/nylas.sh" "$TARGET/usr/bin/nylas" -chmod +x "$TARGET/usr/bin/nylas" +ln -s "../share/nylas-mail/nylas" "$TARGET/usr/bin/nylas-mail" +chmod +x "$TARGET/usr/bin/nylas-mail" mkdir -m $FILE_MODE -p "$TARGET/usr/share/applications" -cp "$OUTPUT_PATH/nylas.desktop" "$TARGET/usr/share/applications" +cp "$OUTPUT_PATH/nylas-mail.desktop" "$TARGET/usr/share/applications" mkdir -m $FILE_MODE -p "$TARGET/usr/share/pixmaps" -cp "$ICON_FILE" "$TARGET/usr/share/pixmaps" +cp "$ICON_FILE" "$TARGET/usr/share/pixmaps/nylas-mail.png" mkdir -m $FILE_MODE -p "$TARGET/usr/share/icons/hicolor" for i in 256 128 64 32 16; do mkdir -p "$TARGET/usr/share/icons/hicolor/${i}x${i}/apps" - cp "$LINUX_ASSETS_DIRECTORY/icons/${i}.png" "$TARGET/usr/share/icons/hicolor/${i}x${i}/apps/nylas.png" + cp "$LINUX_ASSETS_DIRECTORY/icons/${i}.png" "$TARGET/usr/share/icons/hicolor/${i}x${i}/apps/nylas-mail.png" done -# Copy generated LICENSE.md to /usr/share/doc/nylas/copyright -mkdir -m $FILE_MODE -p "$TARGET/usr/share/doc/nylas" -cp "$TARGET/usr/share/nylas/LICENSE" "$TARGET/usr/share/doc/nylas/copyright" +# Copy generated LICENSE.md to /usr/share/doc/nylas-mail/copyright +mkdir -m $FILE_MODE -p "$TARGET/usr/share/doc/nylas-mail" +cp "$TARGET/usr/share/nylas-mail/LICENSE" "$TARGET/usr/share/doc/nylas-mail/copyright" # Add lintian overrides mkdir -m $FILE_MODE -p "$TARGET/usr/share/lintian/overrides" -cp "$ROOT/build/resources/linux/debian/lintian-overrides" "$TARGET/usr/share/lintian/overrides/nylas" +cp "$ROOT/build/resources/linux/debian/lintian-overrides" "$TARGET/usr/share/lintian/overrides/nylas-mail" # Remove group write from all files chmod -R g-w "$TARGET";