inky icon indicating copy to clipboard operation
inky copied to clipboard

[Tracker] What it'd take for an enhanced inky experience

Open paulloz opened this issue 6 years ago • 18 comments

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: 2019-01-18_12-46-42
  • [ ] Create an automatic updater (either just alerting about new versions or really updating the current installation)
  • [x] Remove the Inky Debug menu in release builds
  • [ ] Create a real Preferences menu 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:

paulloz avatar Jan 18 '19 12:01 paulloz

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.

lunarcloud avatar Mar 03 '20 15:03 lunarcloud

Problem with the auto updater is maybe that you have to host a server for it somewhere?

joethephish avatar Apr 07 '20 17:04 joethephish

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.

lunarcloud avatar Apr 07 '20 20:04 lunarcloud

Ooh interesting!

joethephish avatar Apr 07 '20 20:04 joethephish

Have tucked away the [Inky Debug] menu so it no longer looks so ugly!

joethephish avatar Apr 09 '20 09:04 joethephish

#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

lunarcloud avatar Apr 09 '20 14:04 lunarcloud

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 avatar Apr 19 '20 21:04 electavire

@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.

lunarcloud avatar Apr 20 '20 12:04 lunarcloud

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.

paulloz avatar Apr 20 '20 12:04 paulloz

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

lunarcloud avatar Apr 20 '20 12:04 lunarcloud

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 avatar Apr 20 '20 19:04 electavire

@electavire that's already pretty cool tbh

paulloz avatar Apr 24 '20 16:04 paulloz

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?

joethephish avatar Apr 25 '20 07:04 joethephish

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.

electavire avatar Apr 25 '20 08:04 electavire

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.

joethephish avatar Apr 25 '20 09:04 joethephish

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.

sakurayang avatar Mar 16 '21 14:03 sakurayang

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...

paulloz avatar Mar 16 '21 15:03 paulloz

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)

lunarcloud avatar Jun 20 '22 02:06 lunarcloud