builder_peppermint_void/builder/core/bootstrap/paths.py
2025-04-25 12:38:42 +00:00

62 lines
3.2 KiB
Python

"""
SPDX-FileCopyrightText: 2023-2025 PeppermintOS Team
(peppermintosteam@proton.me)
SPDX-License-Identifier: GPL-3.0-or-later
This module defines various path constants used throughout the PeppermintOS build process.
Credits:
- PeppermintOS Team (peppermintosteam@proton.me) - Development and maintenance of the project.
License:
This code is distributed under the GNU General Public License version 3 or later (GPL-3.0-or-later).
For more details, please refer to the LICENSE file included in the project or visit:
https://www.gnu.org/licenses/gpl-3.0.html
"""
import os
BUILD_DIR_NAME = "fusato"
ISO_IMAGE_DIR_NAME = "image"
ROOTFS_DIR_NAME = "rootfs"
PEP_HOST_DIR_NAME = "pep-host"
PEP_TARGET_DIR_NAME = "pep-target"
BOOT_DIR_NAME = "boot"
ISOLINUX_DIR_NAME = "isolinux"
GRUB_DIR_NAME = "grub"
BASE_DIR = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
paths = {
"ISO_BASE_DIR": os.path.join(BASE_DIR, "builder", "fusato", "image"),
"BUILDDIR": os.path.join(BASE_DIR, BUILD_DIR_NAME),
"IMAGEDIR": os.path.join(BASE_DIR, BUILD_DIR_NAME, ISO_IMAGE_DIR_NAME),
"ROOTFS": os.path.join(BASE_DIR, BUILD_DIR_NAME, ISO_IMAGE_DIR_NAME, ROOTFS_DIR_NAME),
"PEPHOSTDIR": os.path.join(BASE_DIR, BUILD_DIR_NAME, PEP_HOST_DIR_NAME),
"PEPTARGETDIR": os.path.join(BASE_DIR, BUILD_DIR_NAME, PEP_TARGET_DIR_NAME),
"BOOT_DIR": os.path.join(BASE_DIR, BUILD_DIR_NAME, ISO_IMAGE_DIR_NAME, BOOT_DIR_NAME),
"ISOLINUX_DIR": os.path.join(BASE_DIR, BUILD_DIR_NAME, ISO_IMAGE_DIR_NAME, BOOT_DIR_NAME, ISOLINUX_DIR_NAME),
"GRUB_DIR": os.path.join(BASE_DIR, BUILD_DIR_NAME, ISO_IMAGE_DIR_NAME, BOOT_DIR_NAME, GRUB_DIR_NAME),
"GRUB_THEMES_DIR": os.path.join(BASE_DIR, BUILD_DIR_NAME, ISO_IMAGE_DIR_NAME, BOOT_DIR_NAME, GRUB_DIR_NAME, "themes/peppermint"),
"ISO_GRUB_EFI_BOOT_DIR": os.path.join(BASE_DIR, BUILD_DIR_NAME, ISO_IMAGE_DIR_NAME, "EFI/BOOT"),
"FILESYSTEM_IMAGE": os.path.join(BASE_DIR, BUILD_DIR_NAME, ISO_IMAGE_DIR_NAME, "rootfs.img"),
"REPOS_YAML_FILE": os.path.join(BASE_DIR, "configs/system_configs/repositories.yaml"),
"KEYS_SOURCE_DIR": os.path.join(BASE_DIR, "peppermint/keys"),
"DRACUT_MODULES_SOURCE_DIR": os.path.join(BASE_DIR, "peppermint/dracut/"),
"ISO_OUTPUT_DIR": os.path.join(BASE_DIR, "iso"),
"ISO_CACHE_DIR": os.path.join(BASE_DIR, "xbps-cache"),
"HOST_CACHE_DIR": os.path.join(BASE_DIR, "xbps-host-cache"),
"ARCHITECTURES_CONFIG_YAML": os.path.join(BASE_DIR, "configs/system_configs/architectures_config.yaml"),
"DESKTOPS_CONFIG_YAML": os.path.join(BASE_DIR, "configs/system_configs/desktops_config.yaml"),
"KERNELS_CONFIG_YAML": os.path.join(BASE_DIR, "configs/system_configs/kernels_config.yaml"),
"COMMON_PACKAGES_YAML": os.path.join(BASE_DIR, "configs/packages/common_packages.yaml"),
"ISO_BUILD_CONFIG_YAML": os.path.join(BASE_DIR, "configs/iso_config/"),
"TEMPLATES_DIR": os.path.join(BASE_DIR, "configs/templates/"),
"GRUB_EFI_CFG_TEMPLATE_DIR": os.path.join(BASE_DIR, "configs/templates/"),
"SPLASH_DIR": os.path.join(BASE_DIR, "peppermint/data"),
"SPLASH_THEMES_DIR": os.path.join(BASE_DIR, "peppermint/grub/themes"),
"SERVER_DOWNLOAD_DIR": "/srv/www/apache",
"BUILD_TEMP_DIR": os.path.join(BASE_DIR, BUILD_DIR_NAME),
"CUSTOM_FILES_DIR": (BASE_DIR),
}