Comment on page
Compiling on macOS
This page allows you to figure out the steps and programs needed to compile your own version of Cider.
Recommended / Required Development Utilities
- Have an Apple Developer Account and be a member of the Apple Developer Program. This is necessary to play music through the app.
- Basic Command Line Knowledge
While not required, PNPM is recommended for compiling Cider, and you can install it by using:
npm install -g pnpm
To remind you again, if you don't have an Apple Developer account to sign the Cider binary after building, it WILL NOT work.
Open a command prompt window in the directory you'd like Git to clone to and enter the following command
git clone https://github.com/ciderapp/Cider.git
Optionally, if you'd like to use the Development branch of Cider to test upcoming features switch your branch by moving your terminal into the directory and using git to checkout the branch by entering the following commands
cd Cider/
git checkout develop
If you'd like to update your repository in the future to keep up to date, use the command (Make sure you're in the directory, you originally cloned in)
git pull
Now for the fun part, by using
pnpm
, npm
or yarn
(we'll be using pnpm
in this case) enter the following command to automatically obtain all required dependencies for installation.pnpm
npm
yarn
pnpm install
npm install --force
yarn install
This step could take a little while on some machines.
What is this for? MacOS doesn't like development Widevine DRM keys for some reason. Therefore, we need to sign our own production keys here. This can be done as follows:
python3 -m pip install --upgrade castlabs-evs
python3 -m castlabs_evs.account signup
Signing up for castLabs EVS
- A valid e-mail address is required for account verification
>> E-mail Address []: [email protected]
>> First Name []: Me
>> Last Name []: Example
>> Organization []: Example, Inc
>> Account Name []: example
>> Password []: XXXXXXXX
>> Verify Password []: XXXXXXXX
Confirming EVS account
- A confirmation code has been sent to your e-mail address
>> Confirmation Code []: XXXXXX
Discarding authorization token(s)
Refreshing authorization token(s)
Remember your account name and password because you will need it later.
Once in a while, you may need to re-authenticate the VMP account. If that is the case:
python3 -m castlabs_evs.account reauth
Discarding authorization token(s)
Refreshing authorization token(s)
>> Account Name [example]:
>> Password []: XXXXXXXX
- 1.In Xcode: Under
Xcode > Preferences (⌘,) > Accounts
, you may add your Apple ID. With your team selected, the View Details... in the bottom right could find you the available certificates for generation/download. - 2.After that, select all of the certificates in Keychain Access to generate as a .p12 file. Remember the file location and the .p12 password.
- 3.
export CSC_LINK= <location to the p12 certificate>
export CSC_KEY_PASSWORD= <p12 certificate password>
export APPLEID= <your Apple Developer email address>
export APPLEIDPASS= <your Apple Developer app-specific password>
You can set the environment variables permanently by edit the
~/.bash-profile
file and add the above lines at the bottom of the file.~/.bash-profile
Electron-Packager doesn't like MacOS notarization. You need to manually patch the files in order for it to work properly:
cp resources/verror-types node_modules/@types/verror/index.d.ts
cp resources/macPackager.js node_modules/app-builder-lib/out/macPackager.js
This step takes a little while on the first compilation so bear with it as it does what it needs to do.
This will generate a universal signed and notarized binary. (Don't mind the "not working" command line, it works)
pnpm
npm
yarn
pnpm dist:universalNotWorking -p never
npm run dist:universalNotWorking -p never
yarn dist:universalNotWorking -p never
On some low-end machines this process could take up to ~20-30 minutes. (It will look like it hangs at the notarization part, don't exit it).
Your new Cider installation setup file is ready for you! You can find your setup executable in your cloned folder directory on your system in the subfolder
dist/
and from there you'll see your new Setup file.Congrats! You've successfully compiled your own build of Cider!
Last modified 1yr ago