def desktop(bld, suffix): obj = bld(features='subst') obj.source = f'dcpomatic{suffix}.desktop.in' obj.target = 'dcpomatic2{suffix}.desktop' obj.INSTALL_PREFIX = bld.env.INSTALL_PREFIX obj.VERSION = bld.env.VERSION return obj.target def build(bld): desktops = [ desktop(bld, ''), desktop(bld, '_batch'), desktop(bld, '_server'), desktop(bld, '_kdm'), desktop(bld, '_player'), desktop(bld, '_playlist'), desktop(bld, '_combiner'), desktop(bld, '_editor'), ] if bld.env.ENABLE_DISK: desktops.append(desktop(bld, '_disk')) if not bld.env.DISABLE_GUI: bld.install_as('${PREFIX}/share/polkit-1/actions/com.dcpomatic.write-drive.policy', 'com.dcpomatic.write-drive.policy') bld.install_files('${PREFIX}/share/applications', desktops)