# FAQ

<details>

<summary>Q: Yarn Install Failure due to Missing Python 'distutils' Module in Python 3.12</summary>

**A:** If you're encountering a failure during `yarn install` due to the absence of the 'distutils' module in Python 3.12, follow these steps to resolve the issue:

1. **Run Our Fix Script:**
   * We have developed a fix script that can automatically detect and resolve potential issues related to this error.
   * To run the script, execute `node setup\fix.js` in your terminal.
   * This script will attempt to rectify the issue and prepare your environment for a successful `yarn install`.
2. **Manually Install 'setuptools':**
   * If you prefer a manual approach or if the script does not resolve the issue, you can install the 'setuptools' module using pip.
   * Run the command `pip install setuptools` in your terminal.
   * 'setuptools' is a collection of enhancements to the Python `distutils` that allow for easier building and distribution of Python packages, and it should help resolve the missing module issue.
3. **Retry Yarn Install:**
   * After applying the fix, run `yarn install` again in your project directory.

</details>

<details>

<summary><strong>Q: <code>.pnp.cjs error</code></strong></summary>

**A:** This error typically occurs when there is a `.pnp.cjs` file located in a parent folder (like `/.yarn`) that conflicts with Omnitool's operations. To resolve this issue, follow these steps:

1. **Locate the `.pnp.cjs` File:**
   * Check the parent directories of your Omnitool project for a `.pnp.cjs` file. This file is often found in a `/.yarn` folder.
2. **Resolve the Conflict:**
   * **Option 1: Delete the `.pnp.cjs` File**
     * If this file is not required for other projects, you can safely delete it.
     * Be cautious and ensure that removing this file does not affect other projects relying on it.
   * **Option 2: Clone Omnitool in a Different Folder**
     * If the `.pnp.cjs` file is needed for other projects, consider cloning your Omnitool repository into a different directory where no `.pnp.cjs` file exists in any parent folders.
3. **Re-Run Omnitool**

</details>

<details>

<summary>Q: `<code>Permisson Denied</code>' Error on <code>node_modules</code></summary>

**A:** To resolve this issue, follow these steps:

1. **Remove the Existing `node_modules` Directory:**
   * Run the command `sudo rm -rf node_modules` in your project's root directory.
   * This command forcefully removes the existing `node_modules` directory and all of its contents.
2. **Reinstall Dependencies:**
   * After successfully removing the `node_modules` directory, run `yarn install` to reinstall all your project dependencies.
   * This command will create a new `node_modules` directory with the correct permissions and all the necessary modules based on your project's `package.json` and `yarn.lock` files.

</details>
