Electron App - unmet dependencies for building installer

Hi, I created an electron application that isn’t that complicated and is about 189 MB on Windows and 235 MB on Ubuntu. I packaged and built it for linux and successfully installed it on a computer I have Ubuntu 18.04 onto. However when I loaded the .deb file onto the nano, it claims that some packages have unmet dependencies:

Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 encounter-view:amd64 : Depends: libgtk-3-0:x64 but it is not installable
                        Depends: libnotify4:x64 but it is not installable
                        Depends: libnss3:x64 but it is not installable
                        Depends: libxss1:x64 but it is not installable
                        Depends: libxtst6:x64 but it is not installable
                        Depends: libuuid1:x64 but it is not installable
E: Unable to correct problems, you have held broken packages.

To build the package I have been using electron-packager:

"package-linux": "electron-packager . my_app --overwrite  --platform=linux --arch=x64 --icon=assets/icons/png/icon.png --prune=true --out=release-builds"

(source: Electron packager tutorial | Christian Engvall) and I have been using electron-installer-debian (a product of electron-installer-linux) to build it with the following build file:

const installer = require('electron-installer-debian')

const options = {
  src: 'dist/my_app/',
  dest: 'dist/my-app-built-installers/',
  arch: 'x64'
}

async function main (options) {
  console.log('Creating package (this may take a while)')
  try {
    await installer(options)
    console.log(`Successfully created package at ${options.dest}`)
  } catch (err) {
    console.error(err, err.stack)
    process.exit(1)
  }
}
main(options)

(source: https://github.com/electron-userland/electron-installer-debian/blob/master/README.md)

Is there something I am missing or doing incorrectly?

Your “.deb” is for an Intel architecture desktop PC. You need to build the applications for the Nano’s architecture. One of “arm64/aarch64/ARMv8-a” (they’re different abbreviations of the architecture). Any of these will fail and are not a compatible architecture: “x86/x86_64/amd64/i386/i686”. If you see these, then they are not compatible, and are for an older 32-bit version of ARM: “arm/armhf/arm32/ARMv7”.

Minor addendum:

.noarch.deb packages are possible. You just need to not use any binaries of any kind. Pure python works. Most scripting languages work, packages of desktop wallpapers work, etc. If a package contains compiled code, however, as in this case, it will require the proper architecture label.

Changing the architecture to arm64 is all that I needed! Thanks

I did keep the .deb file for the installer and it installs just fine on multiple systems using:

sudo dpkg -i <file name of .deb>