You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Use any version of any nixpkgs package without writing a flake.
3
+
A web service that generates Nix flakes with specific package versions from nixpkgs history. Use any version of any nixpkgs package without writing a flake.
4
4
5
-
## Usage
5
+
## Prerequisites
6
+
7
+
-[Nix](https://nixos.org/download/) with flakes enabled
Note: `>` and `<` must be URL-encoded (`%3E`, `%3C`) as they break Nix's URL parser.
42
+
Wooper optimizes flake inputs by selecting the minimum number of nixpkgs revisions needed to satisfy all version requirements.
43
+
44
+
**Limits:**
45
+
- Maximum 50 packages per request
46
+
- Ambiguous packages like `python` are rejected—use `python2` or `python3`
47
+
48
+
## Portable Shell Scripts
50
49
51
-
### Use in a flake
50
+
Generate a standalone shell script that can be committed to your repo:
52
51
53
-
Use wooper.dev as a flake input to pin specific package versions:
52
+
```bash
53
+
nix run "https://wooper.dev/uv~=0.5.0;ruff"> dev.sh
54
+
chmod +x dev.sh
55
+
```
56
+
57
+
When run, the generated flake outputs a shell script to stdout (via [quickshell](https://github.com/buurro/quickshell)). This script fetches packages directly from cache.nixos.org without re-evaluating the flake—anyone with Nix can run it instantly.
58
+
59
+
Works on aarch64-darwin, x86_64-darwin, aarch64-linux, and x86_64-linux.
60
+
61
+
## Use as a Flake Input
62
+
63
+
Pin specific package versions in your flake:
54
64
55
65
```nix
56
66
{
@@ -75,19 +85,47 @@ Use wooper.dev as a flake input to pin specific package versions:
75
85
76
86
## API
77
87
78
-
See [wooper.dev/docs](https://wooper.dev/docs) for all endpoints.
88
+
Interactive documentation available at [wooper.dev/docs](https://wooper.dev/docs).
0 commit comments