Electron-forge: Unable to set exe icon and shortcut icon

Created on 21 May 2018  路  2Comments  路  Source: electron-userland/electron-forge

  • [x ] I have read the contribution documentation for this project.
  • [ x] I agree to follow the code of conduct that this project follows, as appropriate.
  • [ x] I have searched the issue tracker for an issue that matches the one I want to file, without success.

Please describe your issue:
I've been going over the issues and documentation and have been unable to get my application to take my custom icon and name. I had thought it was an issue with relative paths and moved my configuration to a forge-config.js but that doesn't seem to be the issue.

Console output when you run electron-forge with the environment variable DEBUG=electron-forge:*. (Instructions on how to do so here). Please include the stack trace if one exists.

electron-forge make --arch=ia32
WARNING: DEBUG environment variable detected.  Progress indicators will be sent over electron-forge:lifecycle
  electron-forge:lifecycle Process Started: Checking your system +0ms
  electron-forge:lifecycle Process Succeeded: Checking your system +760ms
  electron-forge:runtime-config setting key: verbose to value: false +0ms
WARNING: DEBUG environment variable detected.  Progress indicators will be sent over electron-forge:lifecycle
  electron-forge:lifecycle Process Started: Resolving Forge Config +0ms
  electron-forge:project-resolver searching for project in: C:\Source\AdvantageSuite\AdvantageSuite\LocalService\PrintService +0ms
  electron-forge:project-resolver electron-forge compatible package.json found in C:\Source\AdvantageSuite\AdvantageSuite\LocalService\PrintService\package.json +20ms
  electron-forge:lifecycle Process Succeeded: Resolving Forge Config +25ms
  electron-forge:require-search searching [ '../makers/win32/squirrel.js',
  '../makers/generic/squirrel.js',
  'electron-forge-maker-squirrel',
  'squirrel',
  'C:\\Source\\AdvantageSuite\\AdvantageSuite\\LocalService\\PrintService\\squirrel',
  'C:\\Source\\AdvantageSuite\\AdvantageSuite\\LocalService\\PrintService\\node_modules\\squirrel',
  'C:\\Users\\rsilver\\AppData\\Roaming\\npm\\node_modules\\electron-forge\\dist\\makers\\win32\\squirrel.js',
  'C:\\Users\\rsilver\\AppData\\Roaming\\npm\\node_modules\\electron-forge\\dist\\makers\\generic\\squirrel.js',
  'C:\\Users\\rsilver\\AppData\\Roaming\\npm\\node_modules\\electron-forge\\dist\\api\\electron-forge-maker-squirrel',
  'C:\\Users\\rsilver\\AppData\\Roaming\\npm\\node_modules\\electron-forge\\dist\\api\\squirrel',
  'C:\\Source\\AdvantageSuite\\AdvantageSuite\\LocalService\\PrintService\\squirrel',
  'C:\\Source\\AdvantageSuite\\AdvantageSuite\\LocalService\\PrintService\\node_modules\\squirrel',
  'C:\\Users\\rsilver\\AppData\\Roaming\\npm\\node_modules\\electron-forge\\dist\\api\\makers\\win32\\squirrel.js',
  'C:\\Users\\rsilver\\AppData\\Roaming\\npm\\node_modules\\electron-forge\\dist\\api\\makers\\generic\\squirrel.js',
  'C:\\Users\\rsilver\\AppData\\Roaming\\npm\\node_modules\\electron-forge\\dist\\api\\node_modules\\electron-forge-maker-squirrel',
  'C:\\Users\\rsilver\\AppData\\Roaming\\npm\\node_modules\\electron-forge\\dist\\api\\node_modules\\squirrel',
  'C:\\Source\\AdvantageSuite\\AdvantageSuite\\LocalService\\PrintService\\squirrel',
  'C:\\Source\\AdvantageSuite\\AdvantageSuite\\LocalService\\PrintService\\node_modules\\squirrel' ] relative to C:\Users\rsilver\AppData\Roaming\npm\node_modules\electron-forge\dist\api +0ms
  electron-forge:require-search testing ../makers/win32/squirrel.js +1ms
We need to package your application before we can make it
  electron-forge:lifecycle Process Started: Preparing to Package Application for arch: ia32 +95ms
  electron-forge:project-resolver searching for project in: C:\Source\AdvantageSuite\AdvantageSuite\LocalService\PrintService +100ms
  electron-forge:project-resolver electron-forge compatible package.json found in C:\Source\AdvantageSuite\AdvantageSuite\LocalService\PrintService\package.json +1ms
  electron-forge:hook could not find hook: generateAssets +0ms
  electron-forge:hook could not find hook: prePackage +1ms
  electron-forge:packager packaging with options { asar: false,
  overwrite: true,
  packageManager: 'npm',
  icon: 'C:\\Source\\AdvantageSuite\\AdvantageSuite\\LocalService\\PrintService\\src\\assets\\icons\\win\\twinoaks.ico',
  afterCopy: [ [Function] ],
  afterExtract: [ [Function] ],
  afterPrune: [ [Function] ],
  dir: 'C:\\Source\\AdvantageSuite\\AdvantageSuite\\LocalService\\PrintService',
  arch: 'ia32',
  platform: 'win32',
  out: 'C:\\Source\\AdvantageSuite\\AdvantageSuite\\LocalService\\PrintService\\out',
  electronVersion: '1.8.4',
  quiet: true } +0ms
  electron-forge:lifecycle Process Succeeded: Preparing to Package Application for arch: ia32 +42s
  electron-forge:lifecycle Process Started: Compiling Application +0ms
  electron-forge:lifecycle Process Succeeded: Compiling Application +1s
  electron-forge:lifecycle Process Started: Preparing native dependencies +11s
  electron-forge:lifecycle Process Succeeded: Preparing native dependencies +103ms
  electron-forge:lifecycle Process Started: Packaging Application +0ms
  electron-forge:hook could not find hook: postPackage +1m
  electron-forge:lifecycle Process Succeeded: Packaging Application +25s
Making for the following targets:
  electron-forge:hook could not find hook: preMake +1ms
  electron-forge:lifecycle Process Started: Making for target: squirrel - On platform: win32 - For arch: ia32 +2ms
  electron-forge:lifecycle Process Succeeded: Making for target: squirrel - On platform: win32 - For arch: ia32 +2m
  electron-forge:hook could not find hook: postMake +2m

What command line arguments are you passing?

make --arch=ia32

What does your config.forge data in package.json look like?

{
  make_targets: {
    win32: [
      'squirrel',
    ],
    darwin: [
      'zip',
    ],
    linux: [
      'deb',
      'rpm',
    ],
  },
  electronPackagerConfig: {
    packageManager: 'npm',
    icon: path.resolve(__dirname, 'src/assets/icons/win/twinoaks.ico'),
  },
  electronWinstallerConfig: {
    name: 'TwinOaksPrintService',
    noMsi: false,
    author: 'Twin Oaks Software',
    exe: 'PrintService.exe',
    description: '<my description>',
    iconUrl: '<a url that actually resolves>',
  },
  electronInstallerDebian: {},
  electronInstallerRedhat: {},
  github_repository: {
    owner: '',
    name: '',
  },
  windowsStoreConfig: {
    packageName: '',
    name: 'printservice',
  },
};

Please provide either a failing minimal testcase (with a link to the code) or detailed steps to
reproduce your problem. Using electron-forge init is a good starting point, if that is not the
source of your problem.

Most helpful comment

I think Windows caches icons, so if you change it you need to wait for the cache to get busted.

All 2 comments

Oddly enough restarting my dev machine changed the icon?

Sorry for the inconvenience!

I think Windows caches icons, so if you change it you need to wait for the cache to get busted.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

davidroman0O picture davidroman0O  路  5Comments

naderm picture naderm  路  3Comments

Skizu picture Skizu  路  5Comments

partheseas picture partheseas  路  3Comments

denn-s picture denn-s  路  3Comments