Closed IanTrudel closed 4 years ago
Could you take steps to confirm that this is specifically an issue for StatusPilatus, and not one caused by either your system configuration or by electron-builder? Maybe you could search for similar issues with electron-builder, as it's a fairly complex process.
I usually build the releases from Fedora (also RPM-based) using this exact electron-builder config file, so I suspect that there is something else that's causing this problem on your pc. Feel free to leave a comment if you manage to figure out the issue or have any other questions, because I can't reproduce this issue on Fedora.
@Jelmerro hi there! I resync with the repo, updated npm, reinstalled electron-builder and installed dpkg on my system. The dist
directory does indeed list an AppImage, a snap file and a tarball. It still fails building a deb package and never gets to build a rpm. Is there a way to skip building the deb package?
> StatusPilatus@0.5.0 buildlinux /home/ian/Workspace/StatusPilatus
> node build.js --linux
• electron-builder version=22.2.0 os=5.3.12
• loaded configuration file=/home/ian/Workspace/StatusPilatus/electron-builder.yml
• writing effective config file=dist/builder-effective-config.yaml
• packaging platform=linux arch=x64 electron=7.0.1 appOutDir=dist/linux-unpacked
• building target=AppImage arch=x64 file=dist/StatusPilatus-0.5.0.AppImage
• building target=snap arch=x64 file=dist/StatusPilatus_0.5.0_amd64.snap
• building target=tar.gz arch=x64 file=dist/StatusPilatus-0.5.0.tar.gz
{
"base": "core18",
"grade": "stable",
"confinement": "strict",
"plugs": {
"gnome-3-28-1804": {
"interface": "content",
"target": "$SNAP/gnome-platform",
"default-provider": "gnome-3-28-1804"
},
"gtk-3-themes": {
"interface": "content",
"target": "$SNAP/data-dir/themes",
"default-provider": "gtk-common-themes"
},
"icon-themes": {
"interface": "content",
"target": "$SNAP/data-dir/icons",
"default-provider": "gtk-common-themes"
},
"sound-themes": {
"interface": "content",
"target": "$SNAP/data-dir/sounds",
"default-provider": "gtk-common-themes"
}
},
"name": "statuspilatus",
"version": "0.5.0",
"summary": "StatusPilatus",
"description": "Monitor your PC like never before!",
"architectures": [
"amd64"
],
"apps": {
"statuspilatus": {
"command": "command.sh",
"plugs": [
"desktop",
"desktop-legacy",
"home",
"x11",
"wayland",
"unity7",
"browser-support",
"network",
"gsettings",
"pulseaudio",
"opengl"
],
"environment": {
"DISABLE_WAYLAND": "1",
"TMPDIR": "$XDG_RUNTIME_DIR",
"PATH": "$SNAP/usr/sbin:$SNAP/usr/bin:$SNAP/sbin:$SNAP/bin:$PATH",
"SNAP_DESKTOP_RUNTIME": "$SNAP/gnome-platform",
"LD_LIBRARY_PATH": "$SNAP_LIBRARY_PATH:$SNAP/lib:$SNAP/usr/lib:$SNAP/lib/x86_64-linux-gnu:$SNAP/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH:$SNAP/lib:$SNAP/usr/lib:$SNAP/lib/x86_64-linux-gnu:$SNAP/usr/lib/x86_64-linux-gnu"
}
}
}
}
• building target=deb arch=x64 file=dist/StatusPilatus_0.5.0_amd64.deb
⨯ cannot execute cause=exit status 1
out={:timestamp=>"2020-01-11T12:25:55.321155-0500", :message=>"Debian tools (dpkg/apt) don't do well with packages that use capital letters in the name. In some cases it will automatically downcase them, in others it will not. It is confusing. Best to not use any capital letters at all. I have downcased the package name for you just to be safe.", :oldname=>"StatusPilatus", :fixedname=>"statuspilatus", :level=>:warn}
{:timestamp=>"2020-01-11T12:25:55.331889-0500", :message=>"Debian packaging tools generally labels all files in /etc as config files, as mandated by policy, so fpm defaults to this behavior for deb packages. You can disable this default behavior with --deb-no-default-config-files flag", :level=>:warn}
{:timestamp=>"2020-01-11T12:25:55.750946-0500", :message=>"Process failed: tar failed (exit code 13). Full command was:[\"tar\", \"-C\", \"/tmp/package-dir-staging-08f26784da402265a5fe944d733e822f1bd40d4e36ea6d38aa042516b486\", \"-I'/home/ian/Workspace/StatusPilatus/node_modules/app-builder-bin/linux/x64/app-builder'\", \"--numeric-owner\", \"--owner\", \"0\", \"--numeric-owner\", \"--group\", \"0\", \"-cf\", \"/tmp/package-deb-build-adf094cb0c3a9f0ede79424fbf39fd156d1a4a75a9f238c110c3810e5113/data.tar.xz\", \".\"]", :level=>:error}
command=/home/ian/.cache/electron-builder/fpm/fpm-1.9.3-2.3.1-linux-x86_64/fpm -s dir --force -t deb -d libgtk-3-0 -d libnotify4 -d libnss3 -d libxss1 -d libxtst6 -d xdg-utils -d libatspi2.0-0 -d libuuid1 -d libappindicator3-1 -d libsecret-1-0 --deb-compression xz --architecture amd64 --name StatusPilatus --after-install /tmp/t-BXmJA0/3-after-install --after-remove /tmp/t-BXmJA0/2-after-remove --description '
Monitor your PC like never before!' --version 0.5.0 --package /home/ian/Workspace/StatusPilatus/dist/StatusPilatus_0.5.0_amd64.deb --maintainer PilatusDevs --url https://github.com/PilatusDevs/StatusPilatus --vendor PilatusDevs --license GPL-3.0+ /home/ian/Workspace/StatusPilatus/dist/linux-unpacked/=/opt/StatusPilatus /home/ian/Workspace/StatusPilatus/app/img/icons/16x16.png=/usr/share/icons/hicolor/16x16/apps/statuspilatus.png /home/ian/Workspace/StatusPilatus/app/img/icons/24x24.png=/usr/share/icons/hicolor/24x24/apps/statuspilatus.png /home/ian/Workspace/StatusPilatus/app/img/icons/32x32.png=/usr/share/icons/hicolor/32x32/apps/statuspilatus.png /home/ian/Workspace/StatusPilatus/app/img/icons/48x48.png=/usr/share/icons/hicolor/48x48/apps/statuspilatus.png /home/ian/Workspace/StatusPilatus/app/img/icons/64x64.png=/usr/share/icons/hicolor/64x64/apps/statuspilatus.png /home/ian/Workspace/StatusPilatus/app/img/icons/96x96.png=/usr/share/icons/hicolor/96x96/apps/statuspilatus.png /home/ian/Workspace/StatusPilatus/app/img/icons/128x128.png=/usr/share/icons/hicolor/128x128/apps/statuspilatus.png /home/ian/Workspace/StatusPilatus/app/img/icons/256x256.png=/usr/share/icons/hicolor/256x256/apps/statuspilatus.png /home/ian/Workspace/StatusPilatus/app/img/icons/512x512.png=/usr/share/icons/hicolor/512x512/apps/statuspilatus.png /home/ian/Workspace/StatusPilatus/app/img/icons/1024x1024.png=/usr/share/icons/hicolor/1024x1024/apps/statuspilatus.png /tmp/t-BXmJA0/5-StatusPilatus.desktop=/usr/share/applications/statuspilatus.desktop
workingDir=
{ Error: /home/ian/Workspace/StatusPilatus/node_modules/app-builder-bin/linux/x64/app-builder exited with code ERR_ELECTRON_BUILDER_CANNOT_EXECUTE
at ChildProcess.childProcess.once.code (/home/ian/Workspace/StatusPilatus/node_modules/builder-util/src/util.ts:239:14)
at Object.onceWrapper (events.js:286:20)
at ChildProcess.emit (events.js:198:13)
at maybeClose (internal/child_process.js:982:16)
at Process.ChildProcess._handle.onexit (internal/child_process.js:259:5)
exitCode: 2,
alreadyLogged: true,
code: 'ERR_ELECTRON_BUILDER_CANNOT_EXECUTE' }
You can change the config file named electron-builder.yml
which contains all the configuration for the builds, including a list of platforms to build for. You can simply remove the entire .deb target from the file to skip building it.
Aside from that there are plenty of other targets you could consider if you are interested: https://www.electron.build/configuration/linux
Yes, yes. It did help and yum successfully installed the resulting rpm. Thank you!
Building StatusPilatus using
npm run buildlinux
fails. Should be noted thatnpm install
andnpm start
do work.StatusPilatus is really nice!
Expected Behavior
Some kind of installable package.
Actual Behavior
Trying to build a deb on a non-debian distro. CentOS uses rpm.
Context
How has this issue affected you? What are you trying to accomplish? Providing context helps us come up with a solution that is most useful in the real world
Your Environment
CentOS 7 with custom kernel (5.3.12). NodeJS v10.16.3 npm 6.13.4
Logs