Skip to content

Commit 73f1e85

Browse files
KemingHegithub-actions[bot]
authored andcommitted
docs(src/assets/): update pixi official documentation
1 parent adef73c commit 73f1e85

File tree

5 files changed

+108
-3
lines changed

5 files changed

+108
-3
lines changed

src/assets/pixi/_metadata.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"source_repo": "prefix-dev/pixi",
33
"docs_path": "docs",
4-
"updated_at": "2025-08-19T22:05:16Z",
5-
"commit_sha": "167b115daa9ba771f96e27008ea0fe6313bab0ad"
4+
"updated_at": "2025-08-26T22:05:24Z",
5+
"commit_sha": "77a0a4c9a6d76d7389a48c3c2aa91ae1ed2c2a13"
66
}

src/assets/pixi/global_tools/introduction.md

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,79 @@ You can run `py3` to start the python interpreter.
5757
py3 -c "print('Hello World')"
5858
```
5959

60+
## Install Dependencies From Source
61+
62+
Pixi global also allows you to install [Pixi packages](../build/getting_started.md).
63+
Let's assume there's a C++ package we'd like to install globally from source.
64+
First, it needs to have a package manifest:
65+
66+
```toml title="pixi.toml"
67+
[package]
68+
name = "cpp_math"
69+
version = "0.1.0"
70+
71+
[package.build]
72+
backend = { name = "pixi-build-cmake", version = "*" }
73+
```
74+
75+
If the source is on your machine, you can install it like this:
76+
77+
```shell
78+
pixi global install --path /path/to/cpp_math
79+
```
80+
81+
If the source resides in a git repository, you can access it like this:
82+
83+
```shell
84+
pixi global install --git https://github.com/ORG_NAME/cpp_math.git
85+
```
86+
87+
One has to take care if the source contains multiple outputs, see for example this recipe:
88+
89+
```yaml title="recipe.yaml"
90+
recipe:
91+
name: multi-output
92+
version: "0.1.0"
93+
94+
outputs:
95+
- package:
96+
name: foobar
97+
build:
98+
script:
99+
- if: win
100+
then:
101+
- mkdir -p %PREFIX%\bin
102+
- echo @echo off > %PREFIX%\bin\foobar.bat
103+
- echo echo Hello from foobar >> %PREFIX%\bin\foobar.bat
104+
else:
105+
- mkdir -p $PREFIX/bin
106+
- echo "#!/usr/bin/env bash" > $PREFIX/bin/foobar
107+
- echo "echo Hello from foobar" >> $PREFIX/bin/foobar
108+
- chmod +x $PREFIX/bin/foobar
109+
110+
- package:
111+
name: bizbar
112+
build:
113+
script:
114+
- if: win
115+
then:
116+
- mkdir -p %PREFIX%\bin
117+
- echo @echo off > %PREFIX%\bin\bizbar.bat
118+
- echo echo Hello from bizbar >> %PREFIX%\bin\bizbar.bat
119+
else:
120+
- mkdir -p $PREFIX/bin
121+
- echo "#!/usr/bin/env bash" > $PREFIX/bin/bizbar
122+
- echo "echo Hello from bizbar" >> $PREFIX/bin/bizbar
123+
- chmod +x $PREFIX/bin/bizbar
124+
```
125+
126+
In this case, we have to specify which output we want to install:
127+
128+
```shell
129+
pixi global install --path /path/to/package foobar
130+
```
131+
132+
60133
## Shell Completions
61134

62135
When you work in a terminal, you are using a shell and shells can process completions of command line tools.

src/assets/pixi/reference/cli/pixi/global.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ pixi global <COMMAND>
2424
| [`expose`](global/expose.md) | Interact with the exposure of binaries in the global environment |
2525
| [`shortcut`](global/shortcut.md) | Interact with the shortcuts on your machine |
2626
| [`update`](global/update.md) | Updates environments in the global environment |
27+
| [`tree`](global/tree.md) | Show a tree of dependencies for a specific global environment |
2728

2829

2930
## Description
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
<!--- This file is autogenerated. Do not edit manually! -->
2+
# <code>[pixi](../../pixi.md) [global](../global.md) tree</code>
3+
4+
## About
5+
Show a tree of dependencies for a specific global environment
6+
7+
--8<-- "docs/reference/cli/pixi/global/tree_extender:description"
8+
9+
## Usage
10+
```
11+
pixi global tree [OPTIONS] --environment <ENVIRONMENT> [REGEX]
12+
```
13+
14+
## Arguments
15+
- <a id="arg-<REGEX>" href="#arg-<REGEX>">`<REGEX>`</a>
16+
: List only packages matching a regular expression
17+
18+
## Options
19+
- <a id="arg---environment" href="#arg---environment">`--environment (-e) <ENVIRONMENT>`</a>
20+
: The environment to list packages for
21+
<br>**required**: `true`
22+
- <a id="arg---invert" href="#arg---invert">`--invert (-i)`</a>
23+
: Invert tree and show what depends on a given package in the regex argument
24+
25+
## Description
26+
Show a tree of a global environment dependencies
27+
28+
Dependency names highlighted in green are directly specified in the manifest.
29+
30+
31+
--8<-- "docs/reference/cli/pixi/global/tree_extender:example"

src/assets/pixi/workspace/lockfile.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ Running the following commands will check and automatically update the lock file
103103
All the commands that support the interaction with the lock file also include some lock file usage options:
104104

105105
- `--frozen`: install the environment as defined in the lock file, doesn't update `pixi.lock` if it isn't up-to-date with [manifest file](../reference/pixi_manifest.md). It can also be controlled by the `PIXI_FROZEN` environment variable (example: `PIXI_FROZEN=true`).
106-
- `--locked`: only install if the `pixi.lock` is up-to-date with the [manifest file](../reference/pixi_manifest.md)[^1]. It can also be controlled by the `PIXI_LOCKED` environment variable (example: `PIXI_LOCKED=true`). Conflicts with `--frozen`.
106+
- `--locked`: only install if the `pixi.lock` is up-to-date with the [manifest file](../reference/pixi_manifest.md). It can also be controlled by the `PIXI_LOCKED` environment variable (example: `PIXI_LOCKED=true`). Conflicts with `--frozen`.
107107

108108
!!! Note "Syncing the lock file with the manifest file"
109109
The lock file is always matched with the whole configuration in the manifest file.

0 commit comments

Comments
 (0)