mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-16 11:17:49 -06:00
Move MacOs bulid scripts to more generically name file
CURA-6867
This commit is contained in:
parent
e558752ed0
commit
3510bc55f9
3 changed files with 0 additions and 0 deletions
71
packaging/MacOs/build_macos.py
Normal file
71
packaging/MacOs/build_macos.py
Normal file
|
@ -0,0 +1,71 @@
|
|||
# Copyright (c) 2022 UltiMaker
|
||||
# Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
|
||||
import os
|
||||
import argparse # Command line arguments parsing and help.
|
||||
import subprocess
|
||||
|
||||
ULTIMAKER_CURA_DOMAIN = os.environ.get("ULTIMAKER_CURA_DOMAIN", "nl.ultimaker.cura")
|
||||
|
||||
|
||||
def build_dmg(source_path: str, dist_path: str, filename: str) -> None:
|
||||
create_dmg_executable = os.environ.get("CREATE_DMG_EXECUTABLE", "create-dmg")
|
||||
|
||||
arguments = [create_dmg_executable,
|
||||
"--window-pos", "640", "360",
|
||||
"--window-size", "690", "503",
|
||||
"--app-drop-link", "520", "272",
|
||||
"--volicon", f"{source_path}/packaging/icons/VolumeIcons_Cura.icns",
|
||||
"--icon-size", "90",
|
||||
"--icon", "UltiMaker-Cura.app", "169", "272",
|
||||
"--eula", f"{source_path}/packaging/cura_license.txt",
|
||||
"--background", f"{source_path}/packaging/dmg/cura_background_dmg.png",
|
||||
f"{dist_path}/{filename}",
|
||||
f"{dist_path}/UltiMaker-Cura.app"]
|
||||
|
||||
subprocess.run(arguments)
|
||||
|
||||
|
||||
def sign(dist_path: str, filename: str) -> None:
|
||||
codesign_executable = os.environ.get("CODESIGN", "codesign")
|
||||
codesign_identity = os.environ.get("CODESIGN_IDENTITY")
|
||||
|
||||
arguments = [codesign_executable,
|
||||
"-s", codesign_identity,
|
||||
"--timestamp",
|
||||
"-i", f"{ULTIMAKER_CURA_DOMAIN}.dmg", # TODO: check if this really should have the extra dmg. We seem to be doing this also in the old Rundeck scripts
|
||||
f"{dist_path}/{filename}"]
|
||||
|
||||
subprocess.run(arguments)
|
||||
|
||||
|
||||
def notarize(dist_path: str, filename: str) -> None:
|
||||
notarize_user = os.environ.get("MAC_NOTARIZE_USER")
|
||||
notarize_password = os.environ.get("MAC_NOTARIZE_PASS")
|
||||
altool_executable = os.environ.get("ALTOOL_EXECUTABLE", "altool")
|
||||
|
||||
arguments = [
|
||||
"xcrun", altool_executable,
|
||||
"--notarize-app",
|
||||
"--primary-bundle-id", ULTIMAKER_CURA_DOMAIN,
|
||||
"--username", notarize_user,
|
||||
"--password", notarize_password,
|
||||
"--file", f"{dist_path}/{filename}"
|
||||
]
|
||||
|
||||
subprocess.run(arguments)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
parser = argparse.ArgumentParser(description = "Create dmg of Cura.")
|
||||
parser.add_argument("source_path", type=str, help="Path to Conan install Cura folder.")
|
||||
parser.add_argument("dist_path", type=str, help="Path to Pyinstaller dist folder")
|
||||
parser.add_argument("filename", type = str, help = "Filename of the dmg (e.g. 'UltiMaker-Cura-5.1.0-beta-Linux-X64.dmg')")
|
||||
args = parser.parse_args()
|
||||
build_dmg(args.source_path, args.dist_path, args.filename)
|
||||
sign(args.dist_path, args.filename)
|
||||
|
||||
notarize_dmg = bool(os.environ.get("NOTARIZE_DMG", "TRUE"))
|
||||
if notarize_dmg:
|
||||
notarize(args.dist_path, args.filename)
|
Loading…
Add table
Add a link
Reference in a new issue