mirror of
https://github.com/Foundry376/Mailspring.git
synced 2025-12-12 20:36:29 +01:00
Fix more path issues for deb linux installer
This commit is contained in:
@@ -3,11 +3,11 @@
|
||||
* NOTE: Due to path issues, this script must be run outside of grunt
|
||||
* directly from a powershell command.
|
||||
*/
|
||||
const path = require('path')
|
||||
const createWindowsInstaller = require('electron-winstaller').createWindowsInstaller
|
||||
const path = require('path');
|
||||
const {createWindowsInstaller} = require('electron-winstaller');
|
||||
|
||||
const appDir = path.join(__dirname, "..");
|
||||
const version = require(path.join(appDir, 'package.json')).version;
|
||||
const {version} = require(path.join(appDir, 'package.json'));
|
||||
|
||||
const config = {
|
||||
usePackageJson: false,
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
Name=<%= productName %>
|
||||
Comment=<%= description %>
|
||||
GenericName=<%= productName %>
|
||||
Exec=/usr/bin/nylas-mail %U
|
||||
Icon=nylas-mail
|
||||
Exec=/usr/bin/merani %U
|
||||
Icon=merani
|
||||
Type=Application
|
||||
StartupNotify=true
|
||||
StartupWMClass=<%= productName %>
|
||||
40
app/build/resources/linux/redhat/merani.spec.in
Normal file
40
app/build/resources/linux/redhat/merani.spec.in
Normal file
@@ -0,0 +1,40 @@
|
||||
Name: <%= name %>
|
||||
Version: <%= version %>
|
||||
Release: 0.1%{?dist}
|
||||
Summary: <%= description %>
|
||||
License: GPLv3
|
||||
URL: https://github.com/Foundry376/Merani
|
||||
AutoReqProv: no # Avoid libchromiumcontent.so missing dependency
|
||||
|
||||
requires: libgnome-keyring
|
||||
|
||||
%description
|
||||
<%= description %>
|
||||
|
||||
%install
|
||||
mkdir -p %{buildroot}/usr/share/merani
|
||||
cp -r <%= contentsDir %>/* %{buildroot}/usr/share/merani
|
||||
|
||||
mkdir -p %{buildroot}/usr/bin/
|
||||
|
||||
ln -s ../share/merani/merani %{buildroot}/usr/bin/merani
|
||||
chmod 755 %{buildroot}/usr/bin/merani
|
||||
|
||||
mkdir -p %{buildroot}/usr/share/applications/
|
||||
mv merani.desktop %{buildroot}/usr/share/applications/
|
||||
|
||||
for s in 16 32 64 128 256 512; do
|
||||
mkdir -p %{buildroot}/usr/share/icons/hicolor/${s}x${s}/apps
|
||||
cp -p <%= linuxAssetsDir %>/icons/${s}.png %{buildroot}/usr/share/icons/hicolor/${s}x${s}/apps/merani.png
|
||||
done
|
||||
|
||||
%files
|
||||
/usr/bin/merani
|
||||
/usr/share/merani
|
||||
/usr/share/applications/merani.desktop
|
||||
/usr/share/icons/hicolor/16x16/apps/merani.png
|
||||
/usr/share/icons/hicolor/32x32/apps/merani.png
|
||||
/usr/share/icons/hicolor/64x64/apps/merani.png
|
||||
/usr/share/icons/hicolor/128x128/apps/merani.png
|
||||
/usr/share/icons/hicolor/256x256/apps/merani.png
|
||||
/usr/share/icons/hicolor/512x512/apps/merani.png
|
||||
@@ -1,40 +0,0 @@
|
||||
Name: <%= name %>
|
||||
Version: <%= version %>
|
||||
Release: 0.1%{?dist}
|
||||
Summary: <%= description %>
|
||||
License: GPLv3
|
||||
URL: https://github.com/nylas/nylas-mail
|
||||
AutoReqProv: no # Avoid libchromiumcontent.so missing dependency
|
||||
|
||||
requires: libgnome-keyring
|
||||
|
||||
%description
|
||||
<%= description %>
|
||||
|
||||
%install
|
||||
mkdir -p %{buildroot}/usr/share/nylas-mail
|
||||
cp -r <%= contentsDir %>/* %{buildroot}/usr/share/nylas-mail
|
||||
|
||||
mkdir -p %{buildroot}/usr/bin/
|
||||
|
||||
ln -s ../share/nylas-mail/nylas %{buildroot}/usr/bin/nylas-mail
|
||||
chmod 755 %{buildroot}/usr/bin/nylas-mail
|
||||
|
||||
mkdir -p %{buildroot}/usr/share/applications/
|
||||
mv nylas-mail.desktop %{buildroot}/usr/share/applications/
|
||||
|
||||
for s in 16 32 64 128 256 512; do
|
||||
mkdir -p %{buildroot}/usr/share/icons/hicolor/${s}x${s}/apps
|
||||
cp -p <%= linuxAssetsDir %>/icons/${s}.png %{buildroot}/usr/share/icons/hicolor/${s}x${s}/apps/nylas-mail.png
|
||||
done
|
||||
|
||||
%files
|
||||
/usr/bin/nylas-mail
|
||||
/usr/share/nylas-mail
|
||||
/usr/share/applications/nylas-mail.desktop
|
||||
/usr/share/icons/hicolor/16x16/apps/nylas-mail.png
|
||||
/usr/share/icons/hicolor/32x32/apps/nylas-mail.png
|
||||
/usr/share/icons/hicolor/64x64/apps/nylas-mail.png
|
||||
/usr/share/icons/hicolor/128x128/apps/nylas-mail.png
|
||||
/usr/share/icons/hicolor/256x256/apps/nylas-mail.png
|
||||
/usr/share/icons/hicolor/512x512/apps/nylas-mail.png
|
||||
@@ -49,17 +49,17 @@ module.exports = (grunt) => {
|
||||
version: grunt.config('appJSON').version,
|
||||
description: grunt.config('appJSON').description,
|
||||
productName: grunt.config('appJSON').productName,
|
||||
linuxShareDir: '/usr/local/share/nylas',
|
||||
linuxShareDir: '/usr/local/share/merani',
|
||||
linuxAssetsDir: linuxAssetsDir,
|
||||
contentsDir: contentsDir,
|
||||
}
|
||||
|
||||
// This populates nylas.spec
|
||||
const specInFilePath = path.join(linuxAssetsDir, 'redhat', 'nylas.spec.in')
|
||||
// This populates merani.spec
|
||||
const specInFilePath = path.join(linuxAssetsDir, 'redhat', 'merani.spec.in')
|
||||
writeFromTemplate(specInFilePath, templateData)
|
||||
|
||||
// This populates nylas.desktop
|
||||
const desktopInFilePath = path.join(linuxAssetsDir, 'nylas-mail.desktop.in')
|
||||
// This populates merani.desktop
|
||||
const desktopInFilePath = path.join(linuxAssetsDir, 'merani.desktop.in')
|
||||
writeFromTemplate(desktopInFilePath, templateData)
|
||||
|
||||
const cmd = path.join(grunt.config('appDir'), '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-mail',
|
||||
linuxShareDir: '/usr/share/merani',
|
||||
arch: arch,
|
||||
section: 'devel',
|
||||
maintainer: 'Nylas Team <support@nylas.com>',
|
||||
installedSize: installedSize,
|
||||
}
|
||||
writeFromTemplate(path.join(linuxAssetsDir, 'debian', 'control.in'), data)
|
||||
writeFromTemplate(path.join(linuxAssetsDir, 'nylas-mail.desktop.in'), data)
|
||||
writeFromTemplate(path.join(linuxAssetsDir, 'merani.desktop.in'), data)
|
||||
|
||||
const icon = path.join(grunt.config('appDir'), 'build', 'resources', 'nylas.png')
|
||||
const cmd = path.join(grunt.config('appDir'), 'script', 'mkdeb');
|
||||
@@ -108,7 +108,7 @@ module.exports = (grunt) => {
|
||||
if (spawnError) {
|
||||
return done(spawnError);
|
||||
}
|
||||
grunt.log.ok(`Created ${outputDir}/nylas-${version}-${arch}.deb`);
|
||||
grunt.log.ok(`Created ${outputDir}/merani-${version}-${arch}.deb`);
|
||||
return done()
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user