contour-terminal / contour

Modern C++ Terminal Emulator
http://contour-terminal.org/
Apache License 2.0
2.4k stars 103 forks source link

Homebrew package support (was: OS/X digitally signed builds) #276

Closed christianparpart closed 10 months ago

christianparpart commented 3 years ago

This requires paying A$ for about 100 USD anually. (can I get around that as a non-profit dude?)

See:

uspasojevic96 commented 3 years ago

The only way you can sign as non-dev account is for 1 week, which is a bother. I do have Apple developer account if it's explicitly needed, but generally you don't even need to sign macOS apps if you don't want them on App Store.

Let's also face it, people that are looking to install 3rd party terminal emulator know how to disable Gatekeeper

christianparpart commented 3 years ago

The only way you can sign as non-dev account is for 1 week, which is a bother. I do have Apple developer account if it's explicitly needed, but generally you don't even need to sign macOS apps if you don't want them on App Store.

So in case we want to get it simply signed we don't have to pay then. Great.

Let's also face it, people that are looking to install 3rd party terminal emulator know how to disable Gatekeeper

Agreed. But a saw quite a b talk over at another terminal where users complained about that exact same thing :)

uspasojevic96 commented 3 years ago

Agreed. But a saw quite a b talk over at another terminal where users complained about that exact same thing :)

If you keep Gatekeeper enabled, there is a way to open still, you just right click and open. On the other hand, macOS is quite restrictive until Gatekeeper and SIP are disabled, so I see no reason for power user to keep them enabled.

WSLUser commented 3 years ago

Homebrew will continue to be the best delivery method for Mac. They have their own security measures in place such as using gpg key verification (just like linux package managers) so I wouldn't be terribly concerned about trying to be an official "first party" application on Mac. It's really not worth it with the gatekeeping Apple does beyond the technical stuff.

uspasojevic96 commented 3 years ago

True about homebrew, but if someone knows how to install homebrew then they know how to disable SIP and Gatekeeper for sure :)

EDIT: Creating homebrew tap is a nice idea, i'll look into it if @christianparpart wants to do it like that, it's basically a ppa for macOS

poetaman commented 3 years ago

Homebrew is definitely a good idea, IMO not everyone who knows homebrew disable SIP. I came here looking for a homebrew formula as the autopen.sh failed with following note. I have Qt5 installed, but my system is linked by default to Qt6 in homebrew.

-- Found Boost: /opt/homebrew/lib/cmake/Boost-1.76.0/BoostConfig.cmake (found suitable version "1.76.0", minimum required is "1.6") found components: filesystem
-- [FilesystemResolver]: Using boost::filesystem API
CMake Error at src/contour/CMakeLists.txt:13 (find_package):
  By not providing "FindQt5.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "Qt5", but
  CMake did not find one.

  Could not find a package configuration file provided by "Qt5" with any of
  the following names:

    Qt5Config.cmake
    qt5-config.cmake

  Add the installation prefix of "Qt5" to CMAKE_PREFIX_PATH or set "Qt5_DIR"
  to a directory containing one of the above files.  If "Qt5" provides a
  separate development package or SDK, be sure it has been installed.
uspasojevic96 commented 3 years ago

Homebrew is definitely a good idea, IMO not everyone who knows homebrew disable SIP. I came here looking for a homebrew formula as the autopen.sh failed with following note. I have Qt5 installed, but my system is linked by default to Qt6 in homebrew.

-- Found Boost: /opt/homebrew/lib/cmake/Boost-1.76.0/BoostConfig.cmake (found suitable version "1.76.0", minimum required is "1.6") found components: filesystem
-- [FilesystemResolver]: Using boost::filesystem API
CMake Error at src/contour/CMakeLists.txt:13 (find_package):
  By not providing "FindQt5.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "Qt5", but
  CMake did not find one.

  Could not find a package configuration file provided by "Qt5" with any of
  the following names:

    Qt5Config.cmake
    qt5-config.cmake

  Add the installation prefix of "Qt5" to CMAKE_PREFIX_PATH or set "Qt5_DIR"
  to a directory containing one of the above files.  If "Qt5" provides a
  separate development package or SDK, be sure it has been installed.

Just do export Qt5_DIR=$(brew --prefix qt5)/lib

christianparpart commented 3 years ago

Hey, thanks @reportaman for your interest. We are short before a release, so i think it does make sense to certainly put contour to the brew with it.

Keep in mind that theautogen.sh Sabrina by default creates a debug build. If you want it to create a release build, pass release as argument to it.

Maybe we should also add documentation for OS/X source installs into the wiki. :)

WSLUser commented 3 years ago

I probably should mention Macports as well as it is the 2nd largest delivery method with Homebrew being the first. Notcurses plans on being available for Macports and already has a brew as of recently.

tilgovi commented 2 years ago

Some organizations have mobile device management policies that prevent the end user from overriding Gatekeeper. In the case of my work computer, I can run apps that I download from the internet as long as they are from identified developers, but I cannot run completely unsigned apps.

christianparpart commented 10 months ago

We are in Homebrew already: https://formulae.brew.sh/cask/contour 🥳

lougreenwood commented 7 months ago

I also would like to try contour, but after installing for brew on macos I can't run it since my work computer MDM policy prohibits running unsigned apps or changing the gatekeeper preferences.

Which means I can't run the app at all... 😞

christianparpart commented 7 months ago

Hey @lougreenwood. Many thanks for your interest. Now, I am not so sure if we've added signed builds to the last official release or not, but master branch should have it.

Can you actually download from here and see if this is working for you? https://github.com/contour-terminal/contour/actions/runs/8117115432/artifacts/1290727166

many thanks :)

lougreenwood commented 7 months ago

Thanks for following up @christianparpart.

But unfortunately this build also doesn't work:

Screenshot 2024-03-05 at 17 24 40
uspasojevic96 commented 7 months ago

@christianparpart https://stackoverflow.com/questions/59879731/apple-cannot-check-it-for-malicious-software