VeraCrypt icon indicating copy to clipboard operation
VeraCrypt copied to clipboard

Improve and simplify macOS builds

Open denizt opened this issue 1 year ago • 3 comments

This series of commits aims to simplify the building of Veracrypt on macOS. This PR is currently draft and some commits require a rewrite as they are not atomic and require some fixes to the logic and the text.

  1. Commit eca3086a1dac6af8d08a6d7b2ee9d9095dba2377 needs to be rewritten with the packages location that Veracrypt internally uses, the public version in this commit is outdated
  2. We need to make sure it's clear in the docs that homebrew instructions are only for development purposes

denizt avatar Dec 10 '23 10:12 denizt

@idrassi Can you please share/upload the packages build that is used during the build of Veracypt, I believe the one on the webpage and homebrew is outdated and hosted on free.fr (HTTP).

I would also appreciate it if you could review the PR and have comments so I can wrap this up this weekend 😃

Thanks!

denizt avatar Dec 16 '23 11:12 denizt

@denizt, given the build changes, perhaps you could also introduce a switch to use a fuse-t implementation instead of macFUSE (ref #1055).

vit9696 avatar Dec 31 '23 11:12 vit9696

@denizt, given the build changes, perhaps you could also introduce a switch to use a fuse-t implementation instead of macFUSE (ref #1055).

I can do that in a follow up commit, this PR is unfortunately stalled and I would like to wrap this up first 😄

@idrassi Can you please review?

denizt avatar Feb 24 '24 22:02 denizt

Sorry for the delay! Things have been tough on my side lately. Although there are some minor issues with this PR, I'm merging it, and I will address the issues afterward. Here are some comments about src/Makefile:

  • $(CPU_ARCH) is not needed, so I will remove it.
  • The current logic always adds flags for the x64 build, and then we add either x86 or arm64 flags depending on whether we are doing a legacy or normal build, respectively. In this PR, changes were made to both checks. A better approach would be to have a dedicated block for the development build where we use only native flags (either x64 or arm64) and an official build block containing the existing logic verbatim. This will be much clearer and simpler for maintenance.

idrassi avatar Jun 16 '24 08:06 idrassi

@idrassi Can you please share/upload the packages build that is used during the build of Veracypt, I believe the one on the webpage and homebrew is outdated and hosted on free.fr (HTTP).

I would also appreciate it if you could review the PR and have comments so I can wrap this up this weekend 😃

Thanks!

@denizt I have uploaded the notarized build of Packages that I use for official VeraCrypt build to https://github.com/idrassi/packages/releases. I have also updated the Readme to point to this link.

After merging this PR, I have introduced some enhancements to your changes. You can check and share your comments.

Next step is FUSE-T support (https://github.com/veracrypt/VeraCrypt/issues/1055)

idrassi avatar Jun 16 '24 19:06 idrassi