[Tracker] What it'd take for an enhanced inky experience
Hey there!
Here's an issue tracking what I feel would make inky a better piece of software, nicer to use and a tit more professional. IMHO it is really important how inky feels like because it's the entry point to the ink ecosystem for a lot of people.
- [ ] Create an installer so inky is not lying around in a download folder any more
- [ ] Make sure this does not happen when inky is launched on Windows:

- [ ] Create an automatic updater (either just alerting about new versions or really updating the current installation)
- [x] Remove the
Inky Debugmenu in release builds - [ ] Create a real
Preferencesmenu and store the user preferences (maybe two levels: system wide and project wide?). A lot of other issues would be easy jobs once this is done: #117, #177, #180 (there may be other, I didn't go through the whole issue backlog). - [ ] Start a translation initiative for both inky's menus and documentation
In addition to that, I feel like it'd be nice to make a cleaning pass on the issues here. I'm pretty sure a lot of issues should be closed (e.g. #48, there must be other). I know, it is really time consuming and you folks have a lot of better things to do. It'd make things easier/nicer for people who'd like to contribute to do so. Also, setting up issue tags like easy job etc. would help in the same way.
Obviously, all of this is open to discussion :shipit:
Automatic updater seems to be built into electron itself. https://www.electronjs.org/docs/api/auto-updater That page has recommendations for tools to make the installer in the first place.
Problem with the auto updater is maybe that you have to host a server for it somewhere?
From https://www.electronjs.org/docs/tutorial/updates#using-updateelectronjsorg "GitHub's Electron team maintains update.electronjs.org, a free and open-source webservice that Electron apps can use to self-update"
I think the real biggie is that it requires code signing, which will solve the windows red alert issue.
Ooh interesting!
Have tucked away the [Inky Debug] menu so it no longer looks so ugly!
#225 is the same thing as the windows red-alert, Apple is really cracking down and pushing for code signing and notarizing on top of that
I was thinking of trying to make the windows installer, any preferences on how I go about that? I know visual studio has a built in way, but right now im thinking of NSIS since its got tutorials right there.
@electavire NSIS is very easy, here's an NSIS script I made for an rpg maker packager: https://github.com/lunarcloud/rpg-maker-vx-installer-scripts/blob/master/game.nsi.template
But I do think one of the comprehensive systems will be better long-term. Still, progress is progress I guess.
Is there a usual way other Electron based application are going about that?
Maybe taking a look at well built ones like itch could help.
Itch looks to have written their own: https://github.com/itchio/itch-setup
I think going with one of the recommended tools here: https://www.electronjs.org/docs/tutorial/application-distribution#application-distribution such as forge would be best. Forge is mentioned in their auto-updater section as well
I ended up doing a basic quick one in NSIS while I waited, since it seemed like something neat to know how it works anyway. It works for the current release. It should be super easy to update as things move on as well.
BUT Im ok to skip it if you'd rather I just go straight for a more robust version with electron forge. Ill start looking into it soon here.
@electavire that's already pretty cool tbh
Hmmm, on installers I think we’re pretty limited to whatever can build cross platform via script on a Mac. Since anything else will create too much friction for the release process. It’s already quite complicated to consider how to do the release of a new version of ink + Inky + ink unity integration + consider inkjs implications. So jumping between computers and operating systems won’t help!
But maybe there’s a solution that can do this?
I've looked at making an installer with electron forge, and its a little more involved than I had previously thought. I still wanna look into it, but I'm in the middle of the knot count issue with some friends, so its a bit on the backburner atm. Is it worth updating current release with the installer or no? If so cool but i'd need some guidance on updating the release since that seems a little more involved than just a pull request.
Nah the main thing is workflow for next release. So the main thing is a working pull request I can test. And if it works then I’ll do a new release.
I am translating both ink and inky document into Chinese, and I want to translate the menus first. But I don't really know how to integration il8n into code, so I create a simple il8n JSON file and place it on gist. And if any words I missing, let me know and I will fix it.
Nice! Maybe we should open a new issue to discuss i18n? It's obviously an important topic.
My two cents for what would be possible today: there still isn't any way to store configuration across sessions in inky, so imho the only option to have a reliable language change would be to check against the OS locale 🤔. It's not really optimal, but it's still better than having to select your language in every single inky window you open...
I started implementation of electron-builder for creating installers and portable zips over at #420 and the experience is AFAIK great so far. Pretty simple changes to get what's already being done today for packaging (but please test windows and mac artifacts, don't take my word for it)