feat: add xontribs, hyprspace, and gcc15-fixes overlay
ci/woodpecker/push/woodpecker Pipeline failed
ci/woodpecker/push/woodpecker Pipeline failed
- packages/xontribs.nix: xontrib-prompt-starship, -broot, -term-integrations wheels for use with `programs.xonsh.extraPackages` (or xonsh.override) - packages/hyprspace.nix + hyprspace flake input (flake=false): rebuild plugin against the consumer's hyprland; exposed via overlays.hyprspace - overlays/gcc15-fixes.nix: hotdoc/kitty/libsecret/xdg-desktop-portal/afdko workarounds so fleet nodes on the same pin can opt in with one line - flake.nix: lift overlays out of eachSystem to the root (overlays.default was previously nested per-system, which doesn't match flake schema)
This commit is contained in:
@@ -4,10 +4,36 @@ Personal Nix flake hub — custom packages and overlays
|
|||||||
|
|
||||||
## Overview
|
## Overview
|
||||||
|
|
||||||
Personal Nix flake hub for publishing custom packages and overlays. Provides packages for x86_64-linux and aarch64-linux.
|
Personal Nix flake hub for publishing custom packages and overlays.
|
||||||
|
Provides packages for x86_64-linux and aarch64-linux.
|
||||||
|
|
||||||
## Build
|
## Build
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
nix build .#<package-name>
|
nix build .#<package-name>
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Antigravity
|
||||||
|
|
||||||
|
`google-antigravity` (FHS-wrapped) and `google-antigravity-no-fhs` are
|
||||||
|
re-exposed from
|
||||||
|
[jacopone/antigravity-nix](https://github.com/jacopone/antigravity-nix)
|
||||||
|
(MIT). Upstream auto-updates daily via its own GitHub Actions; we just bump
|
||||||
|
the flake input and CI caches the build to attic.
|
||||||
|
|
||||||
|
When the in-app "new version available" banner appears (or you just want to
|
||||||
|
refresh the pin):
|
||||||
|
|
||||||
|
```bash
|
||||||
|
just antigravity-update # nix flake update antigravity-nix
|
||||||
|
git commit -am "antigravity: bump"
|
||||||
|
git push # CI rebuilds and pushes to attic
|
||||||
|
```
|
||||||
|
|
||||||
|
Then, on the consumer:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd ~/projects/servers/emmett
|
||||||
|
nix flake update oleks-nixpkgs
|
||||||
|
nix run .#deploy
|
||||||
|
```
|
||||||
|
|||||||
@@ -39,6 +39,8 @@ run(f"'{attic}' login ci {ATTIC_SERVER} '{ATTIC_TOKEN}'")
|
|||||||
|
|
||||||
# Packages per arch
|
# Packages per arch
|
||||||
packages = ["hello-world", "geesefs", "xonsh"]
|
packages = ["hello-world", "geesefs", "xonsh"]
|
||||||
|
if ARCH == "x86_64-linux":
|
||||||
|
packages += ["google-antigravity", "google-antigravity-no-fhs"]
|
||||||
if ARCH == "s390x-linux":
|
if ARCH == "s390x-linux":
|
||||||
packages += ["attic-client"]
|
packages += ["attic-client"]
|
||||||
|
|
||||||
|
|||||||
Generated
+56
-1
@@ -1,5 +1,26 @@
|
|||||||
{
|
{
|
||||||
"nodes": {
|
"nodes": {
|
||||||
|
"antigravity-nix": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-utils": "flake-utils",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1776411505,
|
||||||
|
"narHash": "sha256-7HILfdTOvWzAMmfS3lQV3MDmVrr2Epj8x4c9F3mzOSE=",
|
||||||
|
"owner": "jacopone",
|
||||||
|
"repo": "antigravity-nix",
|
||||||
|
"rev": "9f31d28882185d30c0e3082fbc52dab1cd4e879f",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "jacopone",
|
||||||
|
"repo": "antigravity-nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"flake-utils": {
|
"flake-utils": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems"
|
"systems": "systems"
|
||||||
@@ -18,6 +39,24 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"flake-utils_2": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems_2"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1731533236,
|
||||||
|
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"fleet-pins": {
|
"fleet-pins": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs",
|
||||||
@@ -104,7 +143,8 @@
|
|||||||
},
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils",
|
"antigravity-nix": "antigravity-nix",
|
||||||
|
"flake-utils": "flake-utils_2",
|
||||||
"fleet-pins": "fleet-pins",
|
"fleet-pins": "fleet-pins",
|
||||||
"hyprspace": "hyprspace",
|
"hyprspace": "hyprspace",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
@@ -127,6 +167,21 @@
|
|||||||
"repo": "default",
|
"repo": "default",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
"systems_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"root": "root",
|
"root": "root",
|
||||||
|
|||||||
@@ -12,6 +12,13 @@
|
|||||||
url = "github:KZDKM/Hyprspace/0467be86b18cfc324fab04afbd40fe9ef80f7fa9";
|
url = "github:KZDKM/Hyprspace/0467be86b18cfc324fab04afbd40fe9ef80f7fa9";
|
||||||
flake = false;
|
flake = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# Google Antigravity packaging. Upstream auto-updates daily; we re-expose
|
||||||
|
# the overlay and build into our attic cache so emmett pulls from there.
|
||||||
|
antigravity-nix = {
|
||||||
|
url = "github:jacopone/antigravity-nix";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs =
|
outputs =
|
||||||
@@ -21,6 +28,7 @@
|
|||||||
fleet-pins,
|
fleet-pins,
|
||||||
flake-utils,
|
flake-utils,
|
||||||
hyprspace,
|
hyprspace,
|
||||||
|
antigravity-nix,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
@@ -38,6 +46,10 @@
|
|||||||
mkPackages =
|
mkPackages =
|
||||||
pkgs:
|
pkgs:
|
||||||
let
|
let
|
||||||
|
sys = pkgs.stdenv.hostPlatform.system;
|
||||||
|
# Antigravity ships a Google-provided x86_64/aarch64 Linux binary.
|
||||||
|
# Skip it for cross targets (e.g. s390x) where it can't run anyway.
|
||||||
|
supportsAntigravity = sys == "x86_64-linux" || sys == "aarch64-linux";
|
||||||
xontribs = import ./packages/xontribs.nix {
|
xontribs = import ./packages/xontribs.nix {
|
||||||
inherit (pkgs) python3Packages fetchurl;
|
inherit (pkgs) python3Packages fetchurl;
|
||||||
};
|
};
|
||||||
@@ -53,7 +65,15 @@
|
|||||||
}
|
}
|
||||||
# Xontribs: pass into `programs.xonsh.extraPackages` or
|
# Xontribs: pass into `programs.xonsh.extraPackages` or
|
||||||
# `pkgs.xonsh.override { extraPackages = ps: [...]; }`.
|
# `pkgs.xonsh.override { extraPackages = ps: [...]; }`.
|
||||||
// xontribs;
|
// xontribs
|
||||||
|
# Antigravity: re-expose jacopone/antigravity-nix's outputs so emmett
|
||||||
|
# consumes a single flake-hub input and our CI builds into attic.
|
||||||
|
// nixpkgs.lib.optionalAttrs supportsAntigravity {
|
||||||
|
inherit (antigravity-nix.packages.${sys})
|
||||||
|
google-antigravity
|
||||||
|
google-antigravity-no-fhs
|
||||||
|
;
|
||||||
|
};
|
||||||
|
|
||||||
# Overlay providing Hyprspace. Requires `pkgs.hyprland` to be present
|
# Overlay providing Hyprspace. Requires `pkgs.hyprland` to be present
|
||||||
# (consumer applies the Hyprland flake's overlay first). Kept out of
|
# (consumer applies the Hyprland flake's overlay first). Kept out of
|
||||||
|
|||||||
@@ -0,0 +1,30 @@
|
|||||||
|
default:
|
||||||
|
@just --list
|
||||||
|
|
||||||
|
# ── Antigravity ────────────────────────────────────────────
|
||||||
|
|
||||||
|
# Run antigravity (FHS-wrapped) from the attic cache
|
||||||
|
antigravity-run:
|
||||||
|
nix run \
|
||||||
|
--extra-substituters "https://nix-cache-custom.oleks.space/attic-infra-cache-k3s-1" \
|
||||||
|
--extra-trusted-public-keys "attic-infra-cache-k3s-1:qYSNK3DmttQXCFqn1t50qoWGtQNPRFWq9mgQjD05DeU=" \
|
||||||
|
git+https://git.oleks.space/oleks/flake-hub#google-antigravity
|
||||||
|
|
||||||
|
# Run antigravity (non-FHS variant) from the attic cache
|
||||||
|
antigravity-run-no-fhs:
|
||||||
|
nix run \
|
||||||
|
--extra-substituters "https://nix-cache-custom.oleks.space/attic-infra-cache-k3s-1" \
|
||||||
|
--extra-trusted-public-keys "attic-infra-cache-k3s-1:qYSNK3DmttQXCFqn1t50qoWGtQNPRFWq9mgQjD05DeU=" \
|
||||||
|
git+https://git.oleks.space/oleks/flake-hub#google-antigravity-no-fhs
|
||||||
|
|
||||||
|
# Build antigravity (FHS-wrapped)
|
||||||
|
antigravity-build:
|
||||||
|
nix build .#google-antigravity --print-build-logs
|
||||||
|
|
||||||
|
# Build antigravity (non-FHS variant)
|
||||||
|
antigravity-build-no-fhs:
|
||||||
|
nix build .#google-antigravity-no-fhs --print-build-logs
|
||||||
|
|
||||||
|
# Pull the latest jacopone/antigravity-nix pin
|
||||||
|
antigravity-update:
|
||||||
|
nix flake update antigravity-nix
|
||||||
Reference in New Issue
Block a user