Sitelet https://github.com/opencharly/layer-python
Skip to content

About

charly candy: layer-python (standalone repo of the candy de-submodule cutover)

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

18 Commits

Folders and files

Repository files navigation

python

A CPython 3.13 interpreter for OpenCharly images, provided as a pixi-managed conda-forge environment.

The python candy ships a pixi.toml pinning python >=3.13,<3.14 from conda-forge. A pixi builder stage materializes the environment at ~/.pixi/envs/default, so the interpreter lands at a fixed, PATH-contributed path.

What it provides

Property Value
Layer / candy python
Interpreter ~/.pixi/envs/default/bin/python
Version CPython >=3.13,<3.14 (conda-forge)
Requires layer-pixi
Install files charly.yml, pixi.toml, pixi.lock
Service / port none

How to use it

Compose the layer by adding this repo to a box's candy: composition (a candy: node carrying base: with a nested candy: list):

my-python-box:
  candy:
    base: fedora
    candy:
      - '@github.com/opencharly/layer-python:v2026.243.0409'

Then, inside the built image (or on a dev host):

~/.pixi/envs/default/bin/python --version    # Python 3.13.x
~/.pixi/envs/default/bin/python -c "import sys, json, sqlite3; print(sys.version_info.major, sys.version_info.minor)"

The candy's plan: asserts the interpreter exists at the fixed path, is a CPython at or above the supported floor (3.11), and executes a standard-library snippet including the sqlite3 C extension.

The exact minor is not asserted, on purpose: an image's pixi environment belongs to whichever candy ships the pixi.toml it is built from, so a consumer may legitimately pin a different minor than this layer's 3.13 default — open-webui, for one, requires <3.13, so its image runs 3.12. An image that needs a specific version asserts it in its own plan:.

Package management

pixi is the only Python package manager here — pip install and conda install are not the supported path. Add dependencies to pixi.toml and regenerate pixi.lock.

Layout

  • charly.yml — the python: candy entity (the require: on layer-pixi and the check: assertions) and the embedded python-skill: skill entity.
  • pixi.toml / pixi.lock — the conda-forge environment pinning CPython 3.13.
  • .github/workflows/tag-on-merge.yml — CalVer tag + CHANGELOG/ on merge.
  • README.md — this user overview.

Related

  • Owning skill: /charly-languages:python
  • Dependency: /charly-languages:pixi
  • ML variant: /charly-languages:python-ml
  • opencharly/charly — the charly CLI and image builder
  • opencharly/opencharly — the umbrella

About

charly candy: layer-python (standalone repo of the candy de-submodule cutover)

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors