pixi
pixi copied to clipboard
OS 24 error installing robostack packages
Checks
-
[x] I have checked that this issue has not already been reported.
-
[x] I have confirmed this bug exists on the latest version of pixi, using
pixi --version.
Reproducible example
Commands I ran and their output:
pixi shell
pixi.toml/pyproject.toml file that reproduces my issue:
[project]
name = "mqp"
version = "0.1.0"
description = "Development environment for VEX MQP"
authors = ["Your Name <[email protected]>"]
channels = ["https://prefix.dev/conda-forge","https://prefix.dev/robostack-jazzy"]
platforms = ["linux-64","osx-64"]
[dependencies]
compilers = "*"
cmake = "*"
make = "*"
ninja = "*"
pip = ">=25.1.1,<26"
ros-jazzy-desktop = "*"
python = "3.12.*"
ros-jazzy-turtlebot3 = "*"
ros-jazzy-turtlebot3-msgs = "*"
ros-jazzy-turtlebot3-simulations = "*"
colcon-common-extensions = "*"
rosdep = "*"
ros-jazzy-ament-cmake-vendor-package = "*"
ros-jazzy-ament-cmake-clang-format = "*"
ros-jazzy-navigation2 = "*"
pixi info output:
tabor@taborwork:~/Documents/test$ pixi shell
validate cache [00:00:00] [━━━━━━━━━━━━━━━━━━━━] fonts-conda-forge (+265)
download & extract [00:00:00] [━━━━━━━━━━━━━━━━━━━━] 17.22 KiB @ 262.90 KiB/s ros-jazzy-ament-lint
installing packages [00:00:00] [━━━━━━━━━━━━━━━━━━━━] 1,025/1,025 gz-sensors8 (+199) Error: × failed to write proj-9.6.2-h18fbb6c_2.json
╰─▶ Failed to create temporary file in '/home/tabor/Documents/test/.pixi/envs/default/conda-meta': No file
descriptors available (os error 24) at path "/home/tabor/Documents/test/.pixi/envs/default/conda-meta/
prefix_record_Q6gTDZ"
Other files (e.g. script files, source files, etc.):
Issue description
OS 24 error. I removed a few dependencies and a few supported OSes until I got to minimal example.
I have gotten same error on Linux, OSX and Arm Linux.
Expected behavior
Open less files at once?
I would also respect a "We opened too many files, permission to rerun with 'ulimit -n 2048' " with a confirmation dialogue.
Is this fixed with that command? Because we could pottentionally update the automatic rlimit being set by Pixi.
https://github.com/prefix-dev/pixi/blob/b71d61644dff650b9f6e466882799229910daf9f/crates/pixi_utils/src/rlimit.rs#L4
Did you still encounter this issue @gftabor ?
Did you still encounter this issue @gftabor ?
Ya, same issue. Same toml from main issue.
tabor@taborwork:~/test$ pixi clean cache
No cache types specified using the flags.
No cache types specified using the flags.
Do you really want to remove all cache directories from your machine? yes
removed /home/tabor/.cache/rattler/cache tabor@taborwork:~/test$ rm -rf .pixi
tabor@taborwork:~/test$ ls -a
. .. .gitattributes .gitignore pixi.lock pixi.toml
tabor@taborwork:~/test$ rm pixi.lock
tabor@taborwork:~/test$ pixi shell
WARN Encountered 1 warning while parsing the manifest:
⚠ The `project` field is deprecated. Use `workspace` instead.
╭─[/home/tabor/test/pixi.toml:1:1]
1 │ ╭─▶ [project]
2 │ │ name = "mqp"
3 │ │ version = "0.1.0"
4 │ │ description = "Development environment for VEX MQP"
5 │ │ authors = ["Your Name <[email protected]>"]
6 │ │ channels = ["https://prefix.dev/conda-forge","https://prefix.dev/robostack-jazzy"]
7 │ ├─▶ platforms = ["linux-64","osx-64"]
· ╰──── replace this with 'workspace'
8 │
╰────
Error: × failed to fetch pcre-8.45-h9c3ff4c_0.tar.bz2
├─▶ failed to open cache lock for writing: '/home/tabor/.cache/rattler/
│ cache/pkgs/pcre-8.45-h9c3ff4c_0.lock
╰─▶ No file descriptors available (os error 24)
tabor@taborwork:~/test$ pixi --version
pixi 0.59.0
Does setting a new ulimit work though @gftabor ? ulimit -n 2048?
I made a PR so that pixi tries to update the limit to 2048 at startup (it used to be 1024).
I made a PR so that pixi tries to update the limit to 2048 at startup (it used to be 1024).
Is a more scalable solution detecting when you are near the limit and telling the user something, or automatically upping the limit? I am just thinking if you hit the 1024 limit 2048 doesn't seem so unreasonable to hit too...