Problems with electron9 9.4.4-1

Hello,

i can’t update my electron9 version to the newest one.
Errors i get:

[1942/32588] ACTION //components/pay...ld/toolchain/linux/unbundle:default)
FAILED: gen/components/payments/mojom/payment_request_data.mojom-forward.h gen/components/payments/mojom/payment_request_data.mojom-import-headers.h gen/components/payments/mojom/payment_request_data.mojom-test-utils.cc gen/components/payments/mojom/payment_request_data.mojom-test-utils.h gen/components/payments/mojom/payment_request_data.mojom.cc gen/components/payments/mojom/payment_request_data.mojom.h 
python ../../mojo/public/tools/bindings/mojom_bindings_generator.py --use_bundled_pylibs -o gen generate -d ../../ -I ../../ --bytecode_path gen/mojo/public/tools/bindings --filelist=__components_payments_mojom_mojom__generator___build_toolchain_linux_unbundle_default__rule..rsp -g c++ --typemap gen/components/payments/mojom/mojom__type_mappings --scrambled_message_id_salt_path ../../chrome/VERSION
Traceback (most recent call last):
  File "/home/endlich/.cache/yay/electron9/src/src/out/Release/../../mojo/public/tools/bindings/mojom_bindings_generator.py", line 449, in <module>
    sys.exit(main())
  File "/home/endlich/.cache/yay/electron9/src/src/out/Release/../../mojo/public/tools/bindings/mojom_bindings_generator.py", line 444, in main
    return args.func(args, remaining_args)
  File "/home/endlich/.cache/yay/electron9/src/src/out/Release/../../mojo/public/tools/bindings/mojom_bindings_generator.py", line 243, in _Generate
    processor._GenerateModule(
  File "/home/endlich/.cache/yay/electron9/src/src/out/Release/../../mojo/public/tools/bindings/mojom_bindings_generator.py", line 212, in _GenerateModule
    generator.GenerateFiles(filtered_args)
  File "/home/endlich/.cache/yay/electron9/src/src/mojo/public/tools/bindings/generators/mojom_cpp_generator.py", line 541, in GenerateFiles
    self.WriteWithComment(self._GenerateModuleHeader(),
  File "/home/endlich/.cache/yay/electron9/src/src/mojo/public/tools/mojom/mojom/generate/template_expander.py", line 35, in GeneratorInternal
    return ApplyTemplate(args[0], path_to_template, parameters, **kwargs)
  File "/home/endlich/.cache/yay/electron9/src/src/mojo/public/tools/mojom/mojom/generate/template_expander.py", line 28, in ApplyTemplate
    return template.render(params)
  File "/home/endlich/.cache/yay/electron9/src/src/third_party/jinja2/asyncsupport.py", line 76, in render
    return original_render(self, *args, **kwargs)
  File "/home/endlich/.cache/yay/electron9/src/src/third_party/jinja2/environment.py", line 1008, in render
    return self.environment.handle_exception(exc_info, True)
  File "/home/endlich/.cache/yay/electron9/src/src/third_party/jinja2/environment.py", line 780, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "/home/endlich/.cache/yay/electron9/src/src/third_party/jinja2/_compat.py", line 37, in reraise
    raise value.with_traceback(tb)
  File "gen/mojo/public/tools/bindings/cpp_templates.zip/tmpl_4b4c750a11f14c4ee990ca69a07408825b11d62d.py", line 179, in <module>
  File "gen/mojo/public/tools/bindings/cpp_templates.zip/tmpl_3cfd1c143e820f5d5f5c850420142fd64dfa3890.py", line 39, in <module>
  File "/home/endlich/.cache/yay/electron9/src/src/third_party/jinja2/runtime.py", line 478, in __next__
    ctx._after = ctx._safe_next()
  File "/home/endlich/.cache/yay/electron9/src/src/third_party/jinja2/runtime.py", line 455, in _safe_next
    return next(self._iterator)
  File "/home/endlich/.cache/yay/electron9/src/src/mojo/public/tools/bindings/generators/mojom_cpp_generator.py", line 940, in <genexpr>
    return (StructConstructor(struct.fields, ordinal_fields[:param_count])
  File "/home/endlich/.cache/yay/electron9/src/src/mojo/public/tools/bindings/generators/mojom_cpp_generator.py", line 203, in __init__
    self._params = set(params)
TypeError: unhashable type: 'StructField'
[1947/32588] CXX obj/net/tools/trans...transport_security_state_generator.o
ninja: build stopped: subcommand failed.
==> ERROR: A failure occurred in build().
    Aborting...
error making: electron9
[endlich@pc ~]$ 

Thank you.

I got this AUR update the other night. I tried installing on my spare machine (an I-3 with 6GB ram). It made it through the sync stage, etc (which was painfully slow to begin with taking about two hours) and started to compile. After about 1000 of 32000, it failed. I tried again while I started to take the update on my prod machine (I-7 with 32GB ram). It took about the same amount of time to begin compiling (300MB down internet). The I-3 failed again. I added an ignore of electron9 to my pacman.conf and let the I-7 continue. It eventually finished building successfully after another 4+ hours. The spare machine needed the dependencies removed and the build location cleared out that would have cleared out automatically if the build was successful. The sync/build files totaled ~10GB. That machine is doing just fine and will have an ignore pretty much forever now. I’m guessing it was a ram need failure, but who knows how much it really needed. Unless you are really in need of the update and have a LOT of time to kill, I recommend ignoring it.

2 Likes

Why do you even need Electron 9? It’s an outdated version, no longer supported by Arch. If you can get away with it, you should use electron package from the repos.

If you must use Electron 9, because it’s a dependency for some old, obscure software from the AUR, install the electron9-bin package from the AUR:

https://aur.archlinux.org/packages/electron9-bin/

I do not recommend using the electron9 package from the AUR.1 It takes hours to build because it has to compile Chromium. The electron9-bin package contains prebuilt binaries, so it will install in a matter of minutes, if not seconds.


1 Unless you need it because of “Balena Etcher”, in which case go ahead and build electron9 from the AUR, because you deserve just that. After you’re done, read this: Heads up on Etcher - #18 by Kresimir

5 Likes

Balena etcher uses it. It also tries to pull python2 in (which it never did before, python2 is blocked on my machine). Uninstalled.

While admittedly not as bad as electron9, Balena takes forever to build as well. On my slow machine, I just use an appimage of it.

I hate Electron and avoid it like the plague. Etcher? Use MintStick instead, smaller, lighter, and works just as well.

1 Like

Better to use popsicle-git than etcher.

3 Likes

i will keep in mind what you all said. Balena Etcher is really not good, but easy to use. Instead i will try what you suggest. Thank you.

Once bitten, twice shy. Time to uninstall this package and anything that uses it or needs it as a dependency. Another update last night, and another 6 hours they think you should waste compiling things you may not even use it for.

4 Likes

rake

4 Likes

I agree 100%. popsicle-git (which, when installed, displays as Applications/System/USB Flasher) is a much better program than balena-etcher in my opinion, especially when you consider the update process. It appears to be much lighter, updates quicker, and, at least on my computer, it appears to work faster.

And you don’t need to have electron.

Lawrence

4 Likes

Popsicle is pretty excellent, yes.

It’s also written in Rust, so you get extra hipster points for using it. :bearded_person:

4 Likes

I’m just waiting for Linux kernel to be re-written in Rust. :laughing:

Recently i got into a debate with a batchmate who hailed electron as the best thing ever. Turned out he knew nothing more than some JS, and was happy because he’ll not need to learn new frameworks and all to write desktop apps.
Quite like degrading user experience to allow dumb programmers move ahead.

2 Likes

514sh1

5 Likes

I’m just waiting for the Hurd. But Linux kernel re-written in Rust would be nice in the meantime :grin:

2 Likes

I think i Hurd something? Oh ya i Hurd it aint happening! :rofl:

1 Like

You are misinformed. I’ll have you know that it most definitely is happening! Just wait, you’ll see… :angry:

3 Likes

I’m waiting it better Hurd up! :laughing:

2 Likes

Electron: just don’t.™

I mean, you’re using the AUR, so you’re the package maintainer. :man_shrugging: Also, let’s not have a dig at an AUR package because the software takes a long time to compile?

4 Likes

I always used etcher-git and never had an issue. Then i switched to popsicle-git.