# shellcheck shell=dash

___x_cmd_pixi___addpath(){
    [ -d "$___X_CMD_PIXI_BIN_PATH"  ] || return 0
    ___x_cmd path rm "$___X_CMD_PIXI_BIN_PATH" || true
    PATH="$PATH":"$___X_CMD_PIXI_BIN_PATH"
}

___x_cmd_pixi___is_activated(){
    [ -f "$___X_CMD_ROOT_BOOT/pixi" ]
}

___x_cmd_pixi___activate_auto(){
    if [ -f "$___X_CMD_ROOT_BOOT/pixi.disable" ]; then
        pixi:info "Pixi is disabled mannually, to activate run 'x pixi --activate'"
        return 1
    fi

    ___x_cmd_pixi___activate
}

___x_cmd_pixi___activate(){
    ___x_cmd_pixi___addpath

    [ ! -f "$___X_CMD_ROOT_BOOT/pixi.disable" ] || {
        pixi:info "Removing file -> $___X_CMD_ROOT_BOOT/pixi.disable"
        ___x_cmd_cmds rm "$___X_CMD_ROOT_BOOT/pixi.disable" || return $?
    }

    ___x_cmd ensurefp "$___X_CMD_ROOT_BOOT/pixi"
    printf "" >"$___X_CMD_ROOT_BOOT/pixi"


    pixi:info "Pixi activated, if you want to deactivate, run 'x pixi --deactivate'"
}

___x_cmd_pixi___deactivate(){
    ___x_cmd path rm "$___X_CMD_PIXI_BIN_PATH"

    [ ! -f "$___X_CMD_ROOT_BOOT/pixi" ] || {
        pixi:info "Removing file -> $___X_CMD_ROOT_BOOT/pixi"
        ___x_cmd_cmds rm "$___X_CMD_ROOT_BOOT/pixi" || return $?
    }

    ___x_cmd mkdirp "$___X_CMD_ROOT_BOOT"
    printf "" >"$___X_CMD_ROOT_BOOT/pixi.disable"

    pixi:info "Pixi deactivate successfully."
}
