From f8f9baa5843f6ae0744021c208432e6d5e94a53a Mon Sep 17 00:00:00 2001 From: Mark Lee Date: Fri, 30 Dec 2016 19:28:43 -0800 Subject: [PATCH] feat(installer): add rpm installer --- src/electron-forge-install.js | 7 +++++-- src/installers/linux/rpm.js | 10 ++++++++++ 2 files changed, 15 insertions(+), 2 deletions(-) create mode 100644 src/installers/linux/rpm.js diff --git a/src/electron-forge-install.js b/src/electron-forge-install.js index 0fa389d2b4..09ee4990e5 100644 --- a/src/electron-forge-install.js +++ b/src/electron-forge-install.js @@ -17,6 +17,7 @@ import './util/terminate'; import darwinDMGInstaller from './installers/darwin/dmg'; import darwinZipInstaller from './installers/darwin/zip'; import linuxDebInstaller from './installers/linux/deb'; +import linuxRPMInstaller from './installers/linux/rpm'; const d = debug('electron-forge:lint'); @@ -136,8 +137,10 @@ const main = async () => { }, linux: { '.deb': linuxDebInstaller, - '.rpm': async () => {}, - '.flatpak': async () => {}, + '.rpm': linuxRPMInstaller, + '.flatpak': async () => { + console.error('Not yet supported'); + }, }, }; diff --git a/src/installers/linux/rpm.js b/src/installers/linux/rpm.js new file mode 100644 index 0000000000..ee9e99564b --- /dev/null +++ b/src/installers/linux/rpm.js @@ -0,0 +1,10 @@ +import pify from 'pify'; +import sudo from 'sudo-prompt'; + +import linuxInstaller from '../../util/linux-installer'; + +export default async (filePath) => { + linuxInstaller('RPM', 'dnf', pify(sudo.exec)(`dnf --assumeyes --nogpgcheck install ${filePath}`, { + name: 'Electron Forge', + })); +};