import os
from pathlib import Path
from openpilot . system . hardware import PC
DEFAULT_DOWNLOAD_CACHE_ROOT = " /tmp/comma_download_cache "
class Paths :
@staticmethod
def comma_home ( ) - > str :
return os . path . join ( str ( Path . home ( ) ) , " .comma " + os . environ . get ( " OPENPILOT_PREFIX " , " " ) )
@staticmethod
def log_root ( ) - > str :
if os . environ . get ( ' LOG_ROOT ' , False ) :
return os . environ [ ' LOG_ROOT ' ]
elif PC :
return str ( Path ( Paths . comma_home ( ) ) / " media " / " 0 " / " realdata " )
else :
return ' /data/media/0/realdata/ '
@staticmethod
def swaglog_root ( ) - > str :
if PC :
return os . path . join ( Paths . comma_home ( ) , " log " )
else :
return " /data/log/ "
@staticmethod
def swaglog_ipc ( ) - > str :
return " ipc:///tmp/logmessage " + os . environ . get ( " OPENPILOT_PREFIX " , " " )
@staticmethod
def download_cache_root ( ) - > str :
if os . environ . get ( ' COMMA_CACHE ' , False ) :
return os . environ [ ' COMMA_CACHE ' ] + " / "
return DEFAULT_DOWNLOAD_CACHE_ROOT + os . environ . get ( " OPENPILOT_PREFIX " , " " ) + " / "
@staticmethod
def persist_root ( ) - > str :
if PC :
return os . path . join ( Paths . comma_home ( ) , " persist " )
else :
return " /persist/ "
@staticmethod
def stats_root ( ) - > str :
if PC :
return str ( Path ( Paths . comma_home ( ) ) / " stats " )
else :
return " /data/stats/ "
@staticmethod
def config_root ( ) - > str :
if PC :
return Paths . comma_home ( )
else :
return " /tmp/.comma "