Jump to content
meshael

Looking for help in the code signing and certification for Mac OS

Recommended Posts

I have an application that I have been selling for years as a PC program. I got Delphi 10.4 and have ported it to FMX and MacOS. I have it working on my test Mac but am having a lot of problems trying to figure out all the steps to get my application certified and able to be sold to my Mac customers.

 

If you have experience with doing this and are available, please contact me. I am working on this right now.

 

Thanks,

 

Robert

robertleecamp@gmail.com

Share this post


Link to post

Hey, this is what I found that really takes care of a lot of it. They have some great instructional videos too.

 

https://www.excelsoftware.com/clickinstalldownload

 

https://www.excelsoftware.com/videos

 

Robert

Share this post


Link to post

I have done it. There are a lot of steps to it. How far have you got so far?
Is this for putting in the app store or distributing yourself?

Share this post


Link to post

Hi Doug,

 

Its for self distributing. I was trying to use Packages but ran into some road blocks. Do you use Packages application to make installers?

 

Robert

Share this post


Link to post
5 hours ago, meshael said:

I was trying to use Packages but ran into some road blocks

What road blocks did you run into?

Share this post


Link to post

I couldn't determine where to put my project's files that the program uses. Its about 20 subfolders holding about 1,000 text files and images.

 

It was not clear where to put those in Packages.

 

Robert

Share this post


Link to post
3 hours ago, meshael said:

I couldn't determine where to put my project's files that the program uses

I had a look at Packages and could not work that out, either.

3 hours ago, meshael said:

Its about 20 subfolders holding about 1,000 text files and images.

Your project is?

 

I've been working on an app called Mosco that creates .pkg installers (amongst a number of other things). It doesn't have the Presentation customizations that Packages does, but I might be able to add those if needed. I have a plan to release it commercially sometime early next year. If you're interested in Mosco and use Slack, you could use this self-invite link to join my Slack workspace: https://slack.delphiworlds.com and I could add you to the private beta channel.

 

Share this post


Link to post

Hi Dave,

 

I have joined your Slack workspace this past week. Waiting for the beta that is notarized so I can test it and see. Is the notarized version out yet?

 

I am fairly surprised that there isn't a commercial or open source, full featured installer maker for the Mac.

 

My application is one I have been selling on the PC for over 20 years, just trying to get it out to my Mac customers as well. Here is a picture of the main form.

 

Robert 

main.png

Share this post


Link to post
1 hour ago, meshael said:

Waiting for the beta that is notarized so I can test it and see. Is the notarized version out yet?

Yes, it was posted in the channel a few hours after you asked about it

Share this post


Link to post

Hi Dave,

 

Where can I find some documentation on using Mosco. I have it installed. When I click on it  to run it, nothing happens.

 

The install of Mosco itself was very nice and I can see some of the features there. I am excited to explore it.

 

Robert

Share this post


Link to post
5 hours ago, meshael said:

Where can I find some documentation on using Mosco

That's something I need to do. There's basic help for the "MonkeyBuilder" edition, and virtually zero for the "full" version which is in beta. I'll make sure I can help while working on some doc.

5 hours ago, meshael said:

The install of Mosco itself was very nice and I can see some of the features there. I am excited to explore it.

The installer for Mosco itself actually just the standard .pkg format, created with the pkgbuild command: https://www.manpagez.com/man/1/pkgbuild/

 

I may look into using some of the options in order to make creating installers more customisable

Share this post


Link to post

Normally, when you have your Delphi macOS Configuration set to "Developer ID" and compile it makes a "apname.zip" file on the Mac. This file is automatically signed and notarized. You just give it to people and they can run it. You can put the file on your website and they can download it.

The customer downloads it and drags it to the desktop (or wherever). MacOS understands that it is an application and its ready to run.
 

Normally, if you have other data files that you want to include with your app you use the Delphi "Deployment" settings. They get automatically included in the app and are automatically copied to the user directory where your app can read them.

As for 1000 data files, I don't know. I have to add each one. I haven't seen any way to deploy whole directories. Maybe you could change so all that data is in one file like a database.

Share this post


Link to post

Yea Doug,

 

That deployment thing is way too tedious for 1,000 files. So, I just copied them to the Mac and added them to the installer. I appreciate your response, thanks.

Share this post


Link to post
Guest
21 hours ago, Doug Rudd said:

As for 1000 data files, I don't know. I have to add each one. I haven't seen any way to deploy whole directories. Maybe you could change so all that data is in one file like a database.

It's not necessary add one-by-one! Of course!

  1. Open your menu "Deployment" of your project
  2. go to directory where is all files (if exist many files or sub-folders, do it in little portions) because the "size line" -  file1, file2, file3, etc....   you see?
    1. image.thumb.png.5753238bce0e9b96b1c3fdc7d53559fa.png
  3. select all file and sub-folders and drag'n'drop in your "Platform select", be, Debug or Release mode
  4. it's ready!
  5. NOTE: if your 1000 files is in the same folder, then, is better because would not exist sub-folders, you see?
    1. WARNING ABOUT BIG FILES!!!! LIKE BINARY  FILES
    2. IF YOU TRY DRAG'N'DROP RAD FILES (UNIT, DFM, ETC...) the IDE will try open, and not "ADD IT"
  6. NOTE2: when you drag'n'drop one or more files, the absolute path is added in your "Deployment", then, if you have many others sub-folders, just into it, and select its files and repeat the drag'n'drop
  7. NOTE3: unfortunatelly, some file-types, the IDE try open it, then, use the "ADD" button in your screen, as expected!
  8.  

image.thumb.png.227d5c5312419417d00992ae7f805f05.png   image.thumb.png.ccf339f9646e9097b086f0cfa9314491.png

 

  • Now, look into app-name.DPROJ file and see as your files reference is stored in your project
  •     <ProjectExtensions>
            <Borland.Personality>Delphi.Personality.12</Borland.Personality>
            <Borland.ProjectType>Application</Borland.ProjectType>
            <BorlandProject>
                <Delphi.Personality>
                    <Source>
                        <Source Name="MainSource">Project1.dpr</Source>
                    </Source>
                </Delphi.Personality>
                <Deployment Version="3">
                    <DeployFile LocalName="C:\EMB\Firebird3\doc\ambiguity.txt" Configuration="Debug" Class="File">
                        <Platform Name="Win32">
                            <RemoteName>ambiguity.txt</RemoteName>
                            <Overwrite>true</Overwrite>
                        </Platform>
                    </DeployFile>
                    <DeployFile LocalName="C:\EMB\Firebird3\doc\README.connection_strings.txt" Configuration="Debug" Class="File">
                        <Platform Name="Win32">
                            <RemoteName>README.connection_strings.txt</RemoteName>
                            <Overwrite>true</Overwrite>
                        </Platform>
                    </DeployFile>
    ...

     

hug

Edited by Guest

Share this post


Link to post

thanks man, I appreciate your contribution here.

 

However, in my case, there are 20 different subfolders. And the remote path must match. So for each file I have to edit the remote path. It it still quite a bit of editing.

 

I don't know why I can't just drag a subfolder into it and have the remote path match up.

 

They are all text files and some graphic files, and for about 18 of the subfolders, the files have the same name, i.e. 0.txt, 1.txt, 2.txt, etc. So I need them to stay  in separate subfolders. I access them by subfolder/name

 

Robert

Share this post


Link to post

One other question. If I add all these files to the deployment, isn't that going to make the building and running of the program a lot longer?

 

I tried dragging a folder into the deployment and it didn't work.

 

But I do see where I can add the 53 or so files from a subfolder and then change the remote path for all of them at once. Thanks!

Share this post


Link to post
8 hours ago, meshael said:

However, in my case, there are 20 different subfolders. And the remote path must match. So for each file I have to edit the remote path. It it still quite a bit of editing.

 

You could use Grijjy's DeployMan tool - it makes this process a lot easier. They describe it in this article:

 

  https://blog.grijjy.com/2017/01/30/embed-facebook-sdk-for-android-in-your-delphi-mobile-app-part-2/

 

In the section titled "Add the resources to the Delphi Deployment Manager for your Android project"

Share this post


Link to post
Guest

look, think about a little time...

 

IF i can have many setup to many "platgorms", what about if I change the "ALL VONFIGURATION"  firstly?

 

you see?

 

if you have 1 or 20 folders, dont worry...

 

... read my post again!

 

1) into it, and dragNdrop (or "Open" button)

2) repeat for others folders

3) ... the IDE "try" open some file-type!!!

etc...

 

you see?

Edited by Guest

Share this post


Link to post
Guest

as you have many many files txt with "text", of course, what about 1 SQLite db with blob field or if little text, a field "string" = 1000 records, 1 file portable?

NOTE: include others types, like images, binarys data  etc... later, in your app you can have 1db to "your help" (local) and other for your app (local or remote)...you see?

sorry my poor english

Edited by Guest

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×