https://github.com/jacopone/antigravity-nix
Auto-updating Nix package for Google Antigravity agentic IDE. Updates 3x/week. FHS environment with overlay support for NixOS/Home Manager.
https://github.com/jacopone/antigravity-nix
agentic-ide ai-coding ai-ide ai-tools antigravity auto-update code-editor declarative fhs-environment flakes github-actions google google-antigravity home-manager jules nix nix-flakes nix-packages nixos overlay
Last synced: 3 months ago
JSON representation
Auto-updating Nix package for Google Antigravity agentic IDE. Updates 3x/week. FHS environment with overlay support for NixOS/Home Manager.
- Host: GitHub
- URL: https://github.com/jacopone/antigravity-nix
- Owner: jacopone
- License: mit
- Created: 2025-11-18T22:37:08.000Z (7 months ago)
- Default Branch: master
- Last Pushed: 2026-03-06T07:25:02.000Z (3 months ago)
- Last Synced: 2026-03-06T12:06:08.265Z (3 months ago)
- Topics: agentic-ide, ai-coding, ai-ide, ai-tools, antigravity, auto-update, code-editor, declarative, fhs-environment, flakes, github-actions, google, google-antigravity, home-manager, jules, nix, nix-flakes, nix-packages, nixos, overlay
- Language: Nix
- Homepage: https://antigravity.google
- Size: 245 KB
- Stars: 106
- Watchers: 0
- Forks: 12
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# antigravity-nix
Auto-updating Nix Flake for Google Antigravity -- zero configuration, multi-platform, version-pinned.
[](https://github.com/jacopone/antigravity-nix/actions/workflows/update.yml)
[](https://github.com/jacopone/antigravity-nix)
[](https://nixos.org)
## What This Provides
- **FHS environment** wrapping the upstream binary with all required libraries
- **Automated updates** via GitHub Actions (3x/week), with hash verification and build testing
- **Multi-platform** support for x86_64-linux, aarch64-linux, x86_64-darwin, and aarch64-darwin
- **Version pinning** through tagged releases for reproducible builds
## Quick Start
```bash
nix run github:jacopone/antigravity-nix
```
## Installation
### NixOS Configuration
Add to your `flake.nix`:
```nix
{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
antigravity-nix = {
url = "github:jacopone/antigravity-nix";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { self, nixpkgs, antigravity-nix, ... }: {
nixosConfigurations.your-hostname = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
{
environment.systemPackages = [
antigravity-nix.packages.x86_64-linux.default
];
}
];
};
};
}
```
### Home Manager
```nix
{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
home-manager.url = "github:nix-community/home-manager";
antigravity-nix = {
url = "github:jacopone/antigravity-nix";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { self, nixpkgs, home-manager, antigravity-nix, ... }: {
homeConfigurations.your-user = home-manager.lib.homeManagerConfiguration {
pkgs = nixpkgs.legacyPackages.x86_64-linux;
modules = [
{
home.packages = [
antigravity-nix.packages.x86_64-linux.default
];
}
];
};
};
}
```
### Overlay
```nix
{
nixpkgs.overlays = [
inputs.antigravity-nix.overlays.default
];
environment.systemPackages = with pkgs; [
google-antigravity
];
}
```
## Package Variants
Two packaging strategies are available:
| Variant | Strategy | Trade-off |
|---|---|---|
| `default` / `google-antigravity` | `buildFHSEnv` + bubblewrap | Sandboxed, but inherits `no_new_privileges` restrictions |
| `google-antigravity-no-fhs` | `autoPatchelfHook` | No sandbox, full system integration |
The **default** uses `buildFHSEnv` to create an isolated FHS environment via bubblewrap. This is the most compatible approach, but the sandbox sets the kernel's `no_new_privileges` flag, which prevents privilege escalation (`sudo`, `pkexec`) and can cause issues with nested namespaces.
The **no-fhs** variant uses `autoPatchelfHook` to patch ELF binaries directly, the same approach used by VS Code in nixpkgs. It runs natively on NixOS without sandboxing.
```nix
# Use the no-fhs variant
home.packages = [
antigravity-nix.packages.${system}.google-antigravity-no-fhs
];
```
Or via override:
```nix
google-antigravity.override { useFHS = false; }
```
### Chrome Profile Isolation
By default, Antigravity uses your system Chrome profile (`~/.config/google-chrome`), giving it access to your installed extensions. To run with an isolated Chrome profile instead (e.g., when testing untrusted apps):
```nix
google-antigravity.override { useSystemChromeProfile = false; }
```
This omits the `--user-data-dir` and `--profile-directory` flags, letting Chrome manage its own profile independently. Works with both FHS and non-FHS variants.
## Usage
```bash
antigravity # launch from terminal
antigravity /path/to/project # open a specific project
```
## Version Pinning
```nix
# Follow latest (recommended)
inputs.antigravity-nix.url = "github:jacopone/antigravity-nix";
# Pin to a specific release
inputs.antigravity-nix.url = "github:jacopone/antigravity-nix/v1.11.2-6251250307170304";
```
Update to the latest version:
```bash
nix flake update antigravity-nix
```
All releases: https://github.com/jacopone/antigravity-nix/releases
## Requirements
- Nix with flakes enabled
- `allowUnfree = true` (Antigravity is proprietary software)
- On `aarch64-linux`, Chromium is used automatically since Google Chrome is unavailable
## Contributing
1. Fork the repository
2. Create a feature branch
3. Test with `nix build` and `nix flake check`
4. Submit a pull request
## License
MIT License -- see [LICENSE](LICENSE) for details.
Google Antigravity is proprietary software by Google LLC. This is an unofficial package, not affiliated with or endorsed by Google.