GitHunt
TC

TC01/TemplateWorkspace

A template workspace for developing custom packages for Marlin.

Template Workspace

Template for developing custom Marlin packages. Fork this repository and rename to create your own project.

Repository Structure

  • exts/ External packages not included with the ILC framework.
  • packages/ All custom packages linked using git submodules.

Setup Instructions

Container

All commands are compatible and should be run inside the latest gitlab-registry.cern.ch/muon-collider/mucoll-deploy/mucoll:2.9-alma9 image (versions 2.8 and above).

Apptainer

If you have CVMFS available, then it is recommended to use the unpacked version.

apptainer shell --cleanenv /cvmfs/unpacked.cern.ch/gitlab-registry.cern.ch/muon-collider/mucoll-deploy/mucoll:2.9-alma9

Alternatively you can download and convert the Docker image yourself.

apptainer shell --cleanenv gitlab-registry.cern.ch/muon-collider/mucoll-deploy/mucoll:2.9-alma9

Shifter

shifter --image gitlab-registry.cern.ch/muon-collider/mucoll-deploy/mucoll:2.9-alma9 /bin/bash

Build Instructions

Run the following commands from inside your container. The same commands will also work with a local installation of the ILC and Key4Hep software, with the exception of the first line.

source /opt/setup_mucoll.sh # Setup software
cmake -S . -B build 
cmake --build build

Setup Script

The included setup.sh script is useful for defining all paths for the binaries built by the workspace. At the current stage, it setups the following:

  • software via init_mucoll.sh
  • External binaries/libraries found in exts.
  • Add all package libraries to MARLIN_DLL.
  • Export MYBUILD variable with absolute path to the build directory.
  • Export MYWORKSPACE variable with absolute path to the workspace directory.

Run the following at the start of every session. It has an optional argument to the build directory and is set to build/ by default.

source setup.sh [build]

Languages

Shell75.5%CMake24.5%

Contributors

GNU General Public License v3.0
Created November 11, 2025
Updated November 11, 2025
TC01/TemplateWorkspace | GitHunt