osx-sign icon indicating copy to clipboard operation
osx-sign copied to clipboard

Expand wiki

Open sethlu opened this issue 9 years ago • 29 comments
trafficstars

sethlu avatar Feb 15 '16 09:02 sethlu

I'll put some work on this tonight and tomorrow. I just build, packaged and successfully submitted a package to the App Store using the tools. I'll clean up my notes and make a tutorial.

jasonhinkle avatar Feb 15 '16 22:02 jasonhinkle

@jasonhinkle Great! I'll be putting some the issues I have encountered previously as well.

sethlu avatar Feb 16 '16 11:02 sethlu

Ok I thought this was going to be a fairly simple and short addition to the readme. But as I got through everything it grew out of control and that I think perhaps it should be in a separate file altogether! Perhaps it would be best to simply link to this from within the readme? It might even be worth linking in the electron-packager readme as well - perhaps after the pull request has been merged.

Here's the walkthrough. Let me know what you think - is this easy enough for a beginner to get through?

https://github.com/sethlu/electron-osx-sign/blob/document-workflow/MAS-WALKTHROUGH.md

jasonhinkle avatar Feb 17 '16 04:02 jasonhinkle

@jasonhinkle Wow, it looks really holistic! I'll just add some limitations of our current builds and this should fit for most scenarios. Also, I'm thinking about using the wiki from GitHub https://github.com/sethlu/electron-osx-sign/wiki, git: https://github.com/sethlu/electron-osx-sign.wiki.git, so to carry the docs more portable and make them easier for navigation. (I think there's a sidebar.) What do you think about us switching to edit there? Then we probably don't need to have it rebased every time we update the source code as it is separated from it. (We could portal the Wiki from the introductory paragraph of the README.md). Also, my PR to electron-packager https://github.com/maxogden/electron-packager/pull/223 should be merged quite soon. I'll just redirect some of the links to electron-packager once the PR's done so I could experiment some enhancements with my fork. And thanks again, that walkthrough look very nice and neat. I'll be updating the author, currently me, of this git to electron-osx-sign authors as it's becoming a collaborative effort. :+1:

sethlu avatar Feb 17 '16 07:02 sethlu

Ah yes that make sense, I think the Wiki is probably the perfect place for this walkthrough. I just moved that to this page:

https://github.com/sethlu/electron-osx-sign/wiki/Packaging-and-Submitting-an-Electron-App-to-the-Mac-App-Store

I agree, let's not touch anything until the merge happens with electron packager! That is going to be awesome once your pull request is accepted!

jasonhinkle avatar Feb 18 '16 01:02 jasonhinkle

@jasonhinkle nice, I'll be later porting the wiki on the README doc so anyone who wants to find an easy approach go find a MAS dist walkthrough. :+1: Thanks so much for working on this doc! I guess the merging should happen in 1~2 days if everything goes smooth; till then we could have the document updated with less instructions on installing many packages from GitHub. I could work on a navigation menu in the following days just to break down into some minor issues which may happen in delivering a finishing product. Btw, I was just informed of an update from iTC. Seems that with electron-packager and this package, my app got shipped to App Store with success. :smiley: It's named Doodle, an online version hosted here on my website http://doodle.mintkit.net if you may want to have a check.

sethlu avatar Feb 18 '16 10:02 sethlu

That's a cool app - the drawing is super smooth! I messed around with it on my phone and it works great.

I was thinking about doing a little writeup about the entitlement xml files with some basic examples for the wiki. I think that would probably be helpful because it took me a bit of time to work it out. At least for simple file access and network access, which are probably common for apps.

jasonhinkle avatar Feb 19 '16 02:02 jasonhinkle

I just added and linked to this additional page https://github.com/sethlu/electron-osx-sign/wiki/Entitlement-Files-for-Mac-App-Store

jasonhinkle avatar Feb 19 '16 03:02 jasonhinkle

@jasonhinkle wow, that was fast! Thanks for doing that piece of writing. I'll be adding to the Wiki some limitations of current builds of Electron, just to clarify some errors thrown here and there though not causing any significant performance issues. :+1: I'll be porting the Wiki from README as now the electron-packager has been merged.

sethlu avatar Feb 19 '16 07:02 sethlu

Cool. Well keep me posted about any docs needed, I tend to write these for myself as I make my way through it for my own notes, but all the better if it is public with the project!

By the way, awesome work on getting the code merged in - that's a huge win for electron-packager!

jasonhinkle avatar Feb 19 '16 21:02 jasonhinkle

I've noticed that electron-osx-sign is a dependency in electron-packager. Is there a way to pass-through the commands to sign it? I've been looking at the docs but couldn't find anything. Perhaps that is something planned?

Or is there a way on my system to even use the electron-osx-sign app that is packaged, or do I still have to install it separately? I'm updating the wiki now that everything has been merged, I couldn't quite figure out what the recommended way to use it is. Thanks!

jasonhinkle avatar Feb 24 '16 00:02 jasonhinkle

Also I had to install packager from the tarball using npm install https://github.com/maxogden/electron-packager/tarball/master -g to get the new code. Do you think that's just something stuck in my npm cache? When I just install elelctron-packager I don't get the newest version that supports the 'mas' platform.

jasonhinkle avatar Feb 24 '16 00:02 jasonhinkle

@jasonhinkle I think npm install only installs the dependencies in node_modules, unless it also looks at the global installation directory. So what I'd say is that manually signing the app bundles needs global installation of electron-osx-sign in order to get the CLI tools though electron-packager may have already saved it in its dependencies. As @malept hasn't released the next major/minor version, we still need to wait until the mas build support goes official. I could add some notes in the Wiki describing the installation for electron-packager and electron-osx-sign.

sethlu avatar Feb 24 '16 03:02 sethlu

As @malept hasn't released the next major/minor version, we still need to wait until the mas build support goes official.

Follow maxogden/electron-packager#266 for progress on that.

malept avatar Feb 24 '16 03:02 malept

Thanks @malept!

sethlu avatar Feb 24 '16 03:02 sethlu

@jasonhinkle I've just released v0.3.0-beta, with which a deep-search algorithm's added to sign all enclosing executables, including those which may come from Contents/Resources where self-built binaries could be attached without needing specified from binaries. This change should add more automation to https://github.com/sethlu/electron-osx-sign/issues/6.

sethlu avatar Feb 24 '16 07:02 sethlu

That's cool - I'm going to give it a try. My first thought is that it probably will wind up inadvertently signing LICENSE or db files or any other file that isn't a binary simply because it has no file extension. However, I don't think that necessarily hurts anything, though. There also could be binaries that have file extensions as well, .py files, etc. That might hurt somebody who was expecting all their binaries to be signed automatically.

I personally would rather just control what I sign, but I guess it's a trade-off. It might wind up saving somebody some grief when they don't realize that their binaries need to be signed.

jasonhinkle avatar Feb 25 '16 21:02 jasonhinkle

@jasonhinkle yea I'll try to add a binary file filter just in case some texts have no file extension. However, all executables need signing before shipped to iTC (and signing those texts doesn't get any error messages). Also, I've tried in my recent app to embed some PHP scripts, and iTC kindly accepted them. So I guess Python scripts should be fine when run from child_process.

sethlu avatar Feb 25 '16 23:02 sethlu

https://github.com/sethlu/electron-osx-sign/commit/c04fd4f1621a00567051a066c788ffda3e3932fa should solve some issue with filtering binary files.

sethlu avatar Feb 26 '16 04:02 sethlu

Cool I'll check it out. What PHP are you doing? That's got me curious!

On Feb 25, 2016, at 6:49 PM, Zhuo Lu [email protected] wrote:

@jasonhinkle yea I'll try to add a binary file filter just in case some texts have no file extension. However, all executables need signing before shipped to iTC. Also, I've tried in my recent app to embed some PHP scripts, and iTC kindly accepted them. So I guess Python scripts should be fine when run from child_process.

— Reply to this email directly or view it on GitHub.

jasonhinkle avatar Feb 26 '16 05:02 jasonhinkle

Nice. Some of the bits of PHP I did were in the previous Mac App Store app, called to be executed from Electron as php's available for most OS X in command line. Also I'm working on my own account system (a user center) which only records names, languages and passwords at this moment; I'm thinking about creating a leaderboard API for some future games that I may create, with a nice third party login portal. There's an extra module I'm tweaking which basically does site stats. The system's at http://accounts.mintkit.net.

sethlu avatar Feb 27 '16 14:02 sethlu

As code-signing Electron apps is getting slightly more complicated than at the time of the start of this module, I'll some time be drafting a intro to be placed at the cover for those who may be unsure where to start, and lead them to the Wiki for better explanation. So it'll be like a bullet point style to check if any customization's required or they could sign without providing too much options. Otherwise it becomes quite a headache.

sethlu avatar May 29 '16 14:05 sethlu

Following the initial release of electron-osx-sign we've received a lot of questions from the community like #71 which can be very valuable and timesaving for others. I'll find sometime to update the wiki page with a FAQ listing.

sethlu avatar Nov 07 '17 18:11 sethlu

The wiki seems to be gone. Still linked to from the README

adam-lynch avatar Jun 08 '20 11:06 adam-lynch

@adam-lynch Sorry about that! The wiki is back. Perhaps it disappeared after the repo was moved from electron-userland...

sethlu avatar Jun 08 '20 20:06 sethlu

@sethlu you sure it's back?

image

The link in the README is https://github.com/electron-userland/electron-osx-sign/wiki but that just redirects to https://github.com/electron-userland/electron-osx-sign

adam-lynch avatar Jun 09 '20 08:06 adam-lynch

@adam-lynch Looks like it’s back now! Sorry about the confusions.

sethlu avatar Jun 11 '20 09:06 sethlu

Thanks

adam-lynch avatar Jun 11 '20 09:06 adam-lynch