https://github.com/replit/nixmodules
https://github.com/replit/nixmodules
Last synced: 10 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/replit/nixmodules
- Owner: replit
- License: mit
- Created: 2023-03-30T21:53:53.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2024-04-12T19:11:08.000Z (almost 2 years ago)
- Last Synced: 2024-04-13T21:27:38.131Z (almost 2 years ago)
- Language: Nix
- Size: 1020 KB
- Stars: 31
- Watchers: 25
- Forks: 3
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# Replit Nix Modules
This repository holds Replit's Nix modules.
* Each module is located as a folder under `pkgs/modules`
* `pkgs/modules/default.nix` specifies a list of the active modules, some of which are parameterized with the version of the runtime or compiler
To list all active modules, you can do:
```
nix eval .#activeModules --json | jq
```
Output might look like:
```json
{
"bun-0.5": "/nix/store/l08f5vl1af9rpzd7kvr0l5gx9v7y8p12-replit-module-bun-0.5",
"c-clang14.0": "/nix/store/n4vzd9rkpjs72xj9yvlakxh3bardvdki-replit-module-c-clang14.0",
"clojure-1.11": "/nix/store/giqq76fl3yphzsm6rkl1qxqh4mszknpl-replit-module-clojure-1.11",
"cpp-clang14": "/nix/store/8iv4czda6j5nfhxs80ci625hj91ffpbn-replit-module-cpp-clang14",
"dart-2.18": "/nix/store/mhl58f8y3z6jv0javkmx28y5h9aacw39-replit-module-dart-2.18",
"dotnet-7.0": "/nix/store/06mjna44a7w9bby6r121a7i9a5027qqn-replit-module-dotnet-7.0",
"go-1.19": "/nix/store/y1gb1k8bkyd9jqxi4r1g9qibcqn3c6dm-replit-module-go-1.19",
...
}
```
To list all modules (including historical modules):
```
nix eval .#modules --json | jq
```
This will take a while.
## Building
For each of the following examples, the build result will be found in a file or directory named `result`.
To build all active modules (this will take a while, and a lot of disk space):
```
nix build .#bundle
```
To build only a few modules which you can control by editing the `dev-module-ids` list in `pkgs/default.nix`:
```
nix build .#custom-bundle
```
To build a specific module, for example `python-3.10`, you can do:
```
nix build .#'"python-3.10"'
```
To build a disk with only a few modules for development purposes:
```
nix build .#bundle-squashfs
```
or
```
nix build .#custom-bundle-squashfs
```