Comments (10)
Canonical recommends using electron-builder to build snap.
electron-builder --linux snap
If you use electron-forge — please use electron-forge-maker-snap
or simply electron-builder --linux snap --prepackaged <your out dir>
from electron-installer-snap.
Yes, since @develar, @malept and I will all be at the Snapcraft Summit I think that is a perfect time to discuss this 😀
from electron-installer-snap.
@malept was hired by Canonical to work on an official Snap installer for Electron, and this repo represents that work. However, the module published to electron-installer-snap
is actually just a squatted package that points to electron-builder. @develar has added me as an owner of electron-installer-snap
so we can rectify this confusion.
I propose:
npm owner add malept electron-installer-snap
- @malept can publish a new major version bump of the module from this repo.
from electron-installer-snap.
I stumbled upon more issues after republishing this to my private repo and I spent several hours figuring out how to fix some errors while trying https://github.com/electron-userland/electron-builder. I'm proposing for at least a README.md
update to point people to use https://github.com/electron-userland/electron-builder and a npm deprecate
from electron-installer-snap.
I stumbled upon more issues after republishing this to my private repo and I spent several hours figuring out how to fix some errors
If you could file some bugs, that would be helpful. I have a TODO list that I haven't committed, but it should work for the base case.
from electron-installer-snap.
I remember that this https://github.com/electron-userland/electron-installer-snap/blob/master/src/default_args.js#L45 was returning a promise and I just patched it to pathExistsSync
and I think after that I stumbled upon more problems (can't remember what they were) which led me to try electron-builder again.
from electron-installer-snap.
I propose to continue our discussion electron/forge#25 (@zeke or @MarshallOfSound didn't answer me to email/slack). To avoid user confusion. Snapcraft team contributes to electron-builder (e.g. https://github.com/electron-userland/electron-builder/pulls?utf8=✓&q=is%3Apr+author%3Aflexiondotorg) and electron-builder also can produces snap on any OS.
@flexiondotorg In any case we all will discuss it on Snapcraft summit, right :)?
from electron-installer-snap.
@zeke ... didn't answer me to email/slack
Sorry about that. I was not following the forge repo, and I don't think I was pinged on that issue.
Snapcraft Summit I think that is a perfect time to discuss this
👍 let me know how that goes!
from electron-installer-snap.
electron-installer-snap
2.0.0 has been released to NPM, which is the same as the v2.0.0
tag.
from electron-installer-snap.
let me know how that goes
electron-installer-snap is a lightweight tool to build snap if someone doesn't want to use relatively heavy-weight forge/builder. electron-builder offers a more easy and user-friendly way:
- build on any OS (macOS: docker or build service, windows: build service or docker, Linux that doesn't support snapcraft: docker or build service).
- as soon as new version of snapcraft will be released, building without docker on macOS (if no custom packages (covers most of the Electron apps)).
- build on any supported Ubuntu version if no custom packages (so, you can use Ubuntu 17+ to build snap that will be guaranteed to work on Ubuntu 16).
- reduced build time (if no custom package).
- lack of vendor-lock (all common Linux options are shared across all Linux targets). In most cases you just need to set target to
snap
and nothing else.
Ideally, yes, it will be cool if both electron-builder and electron-installer-snap will reuse the same core code (minimum descriptor that required to create snap for Electron app) to build snap, but reality is that this core code is small (though is quite critical and complex (set of default packages and other tricky parts)) and not changed often. And most of the code it is just a boring wrapper.
The only goal for me — to make sure that user have a clear picture what and when use some tool. To avoid user confusion. As upcoming Electron docs about building snap contains such note, I am happy with current situation.
Electron-builder maker for forge will be documented and will be more lightweight (it is not about number of node modules — electron-builder is lightweight and doesn't have a lot of deps, but still question "why dmg-builder is installed as part of this maker" is valid and important for some users (including me)).
from electron-installer-snap.
Related Issues (12)
- "classic" confinement needs but doesn't install bin/electron-launch HOT 1
- [Feature] Support custom layouts to snap yaml HOT 1
- Snapcraft unable to resolve absolute paths when using LXD HOT 1
- How to use this package in 2024? HOT 1
- Fix handling default args from app
- Snapcraft failed due to wrong base HOT 10
- Can't convert packaged app to snap. HOT 2
- Native builds aren't supported on Raspbian GNU/Linux. You can however use 'snapcraft cleanbuild' with a container. HOT 1
- Snapcraft failed with Hash Sum mismatch on Ubuntu 18.04 HOT 20
- Snapcraft builds are always auto rejected HOT 8
- Snap fails to build on Ubuntu 20.04 (multipass problem) HOT 9
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from electron-installer-snap.