summaryrefslogtreecommitdiff
path: root/src/virtualenv/activation/python/__init__.py
blob: 1d73e9969d2db64222ffffa8a3a9c05d1b44d740 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
from __future__ import absolute_import, unicode_literals

import json
import os

from pathlib2 import Path

from ..via_template import ViaTemplateActivator


class PythonActivator(ViaTemplateActivator):
    def templates(self):
        yield Path("activate_this.py")

    def replacements(self, creator, dest_folder):
        replacements = super(PythonActivator, self).replacements(creator, dest_folder)
        site_dump = json.dumps([os.path.relpath(str(i), str(dest_folder)) for i in creator.site_packages], indent=2)
        replacements.update({"__SITE_PACKAGES__": site_dump})
        return replacements