gon
osxcross
gon | osxcross | |
---|---|---|
6 | 23 | |
1,454 | 2,737 | |
- | - | |
0.0 | 5.5 | |
6 months ago | about 1 month ago | |
Go | C++ | |
MIT License | GNU General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
gon
-
Sickcodes/Docker-OS X: Run macOS VM in a Docker
It might be less effort to use something like this: https://gregoryszorc.com/blog/2021/04/14/pure-rust-implement...
Might even be able to modify `gon` to use that instead of Apple's `codesign` and then you'll have notarization too: https://github.com/mitchellh/gon
-
A Completely Open-Source Implementation of Apple Code Signing and Notarization
I’ve always used gon ( https://github.com/mitchellh/gon ) for this, which is open source golang, but I don’t think it supports mach-o embedding. I’ll have to try this tool out.
-
How do I bundle a Golang executable into a MacOS .app file?
There is no need for some special solution to pack your .app, you need to create .app directories, copy your binary, create Info.plist with metadata about your binary, icon, etc. I did this for a couple of apps and it is simple. It is another thing if you want to sign and notarize the binary, there are other tools for that, like https://github.com/mitchellh/gon.
-
Signing app for MacOS is like alien cryptographic language
I use gon to sign and notarize a DMG file. Once you set it up, it's a simple one-line command that will upload the DMG to Apple, await notarization, and give you back a DMG that's ready for distribution.
-
The Gates to Hell: Apples Notarizing
My advice from years of notarizing my apps is to make sure you do it at least once per day for each of your apps. If you only notarize once every release (say, every month or so), you are almost guaranteed to encounter some new cryptic error that you've never seen before, either due to some glitch in signing your app or frameworks, or else some server-side error such as new terms & conditions that you are being "encouraged" to agree to. It will take you hours to research and resolve them if they aren't spotted right away.
As others pointed out, https://github.com/mitchellh/gon is a great tool for doing this on your local machine (e.g., with a cron job). In addition, if you are building your app using a GitHub action (which I highly recommend if it is open-source), you can use my https://github.com/hubomatic/hubomat action to package and notarize a release in one shot. The sample/template app does this automatically on every commit as well as once per day: https://github.com/hubomatic/MicroVector/actions.
So when this fails from a scheduled job, you at least know that something has changed on the Apple side and can investigate that right away. And if it fails as a result of a commit, then at least you can start looking at what changes you may have made to your entitlements or code signing settings or embedded frameworks or any of the other million things that can cause it to fail.
osxcross
- Darling: Run macOS Software on Linux
-
How to cross Compile on Debian for: Mac / FreeBSD / OpenBSD / Android ... ?
If you actually have MacOS device and can install Xcode and so on then you can proceed here and read the instructions.
-
I find it's not possible to do serious C/C++ coding on latest macOS
Have you considered using a dockerized osxcross cross compiler toolchain in your CI? Granted it is a bit clunky to setup...
-
Apple just lost its lawsuit trying to ban iOS virtual machines
Technically it's possible, but possibly not legal:
https://github.com/tpoechtrager/osxcross
> Please ensure you have read and understood the Xcode license terms before continuing.
According to the EULA you may only use the SDK on Apple-branded computers. But you can use Linux to cross compile to Apple.
- Go port of SQLite without CGo
-
Cross compile for ppc macs (10.4)
is there a way to cross compile without vms? something similar to https://github.com/tpoechtrager/osxcross?
-
Am looking for an API guru to assess how to make a project multiplatform
If you figure out how to get SDL working, one possibility is to develop on Linux, then use mingw-w64 to cross compile from Linux to windows, then use osxcross to cross-compile from Windows to OSX.
- How To Fix Your Computer
-
Rust & Cross-compiling from Linux to Mac on GitHub Actions
Thank you osxcross for creating the path forward
-
A Completely Open-Source Implementation of Apple Code Signing and Notarization
This is actually a solved problem, using osxcross[0]. The experience is honestly very smooth, and we don't require any apple proprietary binaries. The only thing apple-proprietary is their SDK (containing the header files for compiling, and tbd files for linking), which can be downloaded from apple's website (at least if you have a developer account), or from various GitHub projects archiving them.
[0]: https://github.com/tpoechtrager/osxcross
What are some alternatives?
gow - Missing watch mode for Go commands. Watch Go files and execute a command like "go run" or "go test"
mold - Mold: A Modern Linker 🦠
corona - Solar2D Game Engine main repository (ex Corona SDK)
eShopOnContainers - Cross-platform .NET sample microservices and container based application that runs on Linux Windows and macOS. Powered by .NET 7, Docker Containers and Azure Kubernetes Services. Supports Visual Studio, VS for Mac and CLI based environments with Docker CLI, dotnet CLI, VS Code or any other code editor. Moved to https://github.com/dotnet/eShop.
httptoolkit-desktop - Electron wrapper to build and distribute HTTP Toolkit for the desktop
fltk-rs - Rust bindings for the FLTK GUI library.
xcnotary - the missing macOS app notarization helper, built with Rust
xcgo - Golang cross-platform builder docker image with CGo and other tooling
realize - Realize is the #1 Golang Task Runner which enhance your workflow by automating the most common tasks and using the best performing Golang live reloading.
glibc_version_header - Build portable Linux binaries without using an ancient distro
lemur - Repository for the Lemur Certificate Manager
docker-go-mingw - Docker image for building Go binaries with MinGW toolchain