rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5 heartwoodfce91db7665afadc56eacdd36db2b6aec0a0a432
{
"request": "trigger",
"version": 1,
"event_type": "patch",
"repository": {
"id": "rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5",
"name": "heartwood",
"description": "Radicle Heartwood Protocol & Stack",
"private": false,
"default_branch": "master",
"delegates": [
"did:key:z6MksFqXN3Yhqk8pTJdUGLwATkRfQvwZXPqR2qMEhbS9wzpT",
"did:key:z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM",
"did:key:z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz"
]
},
"action": "Created",
"patch": {
"id": "91ba46318fc1dee0d239894d6e2a7c7e8d0a1548",
"author": {
"id": "did:key:z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM",
"alias": null
},
"title": "Nix Improvements",
"state": {
"status": "merged",
"conflicts": []
},
"before": "9767b485c2aad1e23097d2b5165287ba84cfa452",
"after": "fce91db7665afadc56eacdd36db2b6aec0a0a432",
"commits": [
"fce91db7665afadc56eacdd36db2b6aec0a0a432",
"1da826b0cc4ca63378290fd71bbdbd9ab1f2f090"
],
"target": "3fc92f83fe089263c470b328414d923227cf0e4a",
"labels": [],
"assignees": [],
"revisions": [
{
"id": "91ba46318fc1dee0d239894d6e2a7c7e8d0a1548",
"author": {
"id": "did:key:z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM",
"alias": null
},
"description": "----------------\n\nnix: use rust-overlay for toolchain pinning\n\nTo ensure the Nix derivations are using the correct toolchain, defined\nin the `rust-toolchain` file, use the `rust-overlay` library.\n\nAlso remove the `fenix` input, since this was actually never used and\nwas an artefact of some copy-paste shenanigans.\n\n--------------------\n\nnix: add rad-web app\n\nTo allow for Nix users to install `rad-web` easily, add the package to\nthe set of `packages` and `apps`.",
"base": "9767b485c2aad1e23097d2b5165287ba84cfa452",
"oid": "fce91db7665afadc56eacdd36db2b6aec0a0a432",
"timestamp": 1708352102
},
{
"id": "4813c42439717389d0211e50a152e636aac8b32f",
"author": {
"id": "did:key:z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM",
"alias": null
},
"description": "Use buildEnv to merge radicle and radicle-httpd outputs\n\nThe canonical way to merge multiple packages into one is buildEnv.",
"base": "9767b485c2aad1e23097d2b5165287ba84cfa452",
"oid": "6f38bb6e721711412234bf474f503d91d71f74f4",
"timestamp": 1708613825
},
{
"id": "3db826432765a19c65540731a62b7db47e7f55c2",
"author": {
"id": "did:key:z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM",
"alias": null
},
"description": "Rebase.",
"base": "a48081f2717f069d456ec09f31d9e639b232dbed",
"oid": "7a9decf00fd9de970fc24d42cbd10f45895b6bec",
"timestamp": 1709550680
},
{
"id": "b1e9fc22a2a0ee55638ea2295220aa73be718367",
"author": {
"id": "did:key:z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM",
"alias": null
},
"description": "Rebase.",
"base": "501b6ba9eb9871ca303c631d166c92c6ca2f1725",
"oid": "64fd41961e038d171179063174fda182a89099dc",
"timestamp": 1709936371
}
]
}
}
{
"response": "triggered",
"run_id": {
"id": "ef988331-fb6c-40d9-a891-ef4b51ebbc3a"
},
"info_url": "https://cci.rad.levitte.org//ef988331-fb6c-40d9-a891-ef4b51ebbc3a.html"
}
Started at: 2026-09-08 00:59:57.474221+02:00
Commands:
$ rad clone rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5 .
✓ Creating checkout in ./...
✓ Remote cloudhead@z6MksFqXN3Yhqk8pTJdUGLwATkRfQvwZXPqR2qMEhbS9wzpT added
✓ Remote-tracking branch cloudhead@z6MksFqXN3Yhqk8pTJdUGLwATkRfQvwZXPqR2qMEhbS9wzpT/master created for z6MksFqXN3Yhqk8pTJdUGLwATkRfQvwZXPqR2qMEhbS9wzpT
✓ Remote fintohaps@z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM added
✓ Remote-tracking branch fintohaps@z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM/master created for z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM
✓ Remote lorenz@z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz added
✓ Remote-tracking branch lorenz@z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz/master created for z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz
✓ Repository successfully cloned under /opt/radcis/ci.rad.levitte.org/cci/state/ef988331-fb6c-40d9-a891-ef4b51ebbc3a/w/
╭────────────────────────────────────╮
│ heartwood │
│ Radicle Heartwood Protocol & Stack │
│ 189 issues · 38 patches │
╰────────────────────────────────────╯
Run `cd ./.` to go to the repository directory.
Exit code: 0
$ rad patch checkout 91ba46318fc1dee0d239894d6e2a7c7e8d0a1548
✓ Switched to branch patch/91ba463 at revision 91ba463
✓ Branch patch/91ba463 setup to track rad/patches/91ba46318fc1dee0d239894d6e2a7c7e8d0a1548
Exit code: 0
$ git config advice.detachedHead false
Exit code: 0
$ git checkout fce91db7665afadc56eacdd36db2b6aec0a0a432
HEAD is now at fce91db7 nix: add rad-web app
Exit code: 0
$ rad patch show 91ba46318fc1dee0d239894d6e2a7c7e8d0a1548 -p
╭─────────────────────────────────────────────────────────────────────────────────╮
│ Title Nix Improvements │
│ Patch 91ba46318fc1dee0d239894d6e2a7c7e8d0a1548 │
│ Author fintohaps z6Mkire…SQZ3voM │
│ Head fce91db7665afadc56eacdd36db2b6aec0a0a432 │
│ Base 9767b485c2aad1e23097d2b5165287ba84cfa452 │
│ Target master │
│ Branches patch/91ba463 │
│ Commits ahead 2, behind 1609 │
│ Status merged │
│ │
│ ---------------- │
│ │
│ nix: use rust-overlay for toolchain pinning │
│ │
│ To ensure the Nix derivations are using the correct toolchain, defined │
│ in the `rust-toolchain` file, use the `rust-overlay` library. │
│ │
│ Also remove the `fenix` input, since this was actually never used and │
│ was an artefact of some copy-paste shenanigans. │
│ │
│ -------------------- │
│ │
│ nix: add rad-web app │
│ │
│ To allow for Nix users to install `rad-web` easily, add the package to │
│ the set of `packages` and `apps`. │
├─────────────────────────────────────────────────────────────────────────────────┤
│ fce91db nix: add rad-web app │
│ 1da826b nix: use rust-overlay for toolchain pinning │
├─────────────────────────────────────────────────────────────────────────────────┤
│ ● Revision 91ba463 @ 9767b48..fce91db by fintohaps z6Mkire…SQZ3voM 2 years ago │
│ ↑ Revision 4813c42 @ 9767b48..6f38bb6 by spacefrogg z6Mkgfw…iFFBYQp 2 years ago │
│ ↑ Revision 3db8264 @ a48081f..7a9decf by cloudhead z6MktaN…hzPZRZW 2 years ago │
│ ↑ Revision b1e9fc2 @ 501b6ba..64fd419 by cloudhead z6MksFq…bS9wzpT 2 years ago │
│ └─ ✓ merged by cloudhead z6MksFq…bS9wzpT │
╰─────────────────────────────────────────────────────────────────────────────────╯
commit fce91db7665afadc56eacdd36db2b6aec0a0a432
Author: Fintan Halpenny <fintan.halpenny@gmail.com>
Date: Mon Feb 19 14:12:48 2024 +0000
nix: add rad-web app
To allow for Nix users to install `rad-web` easily, add the package to
the set of `packages` and `apps`.
Signed-off-by: Fintan Halpenny <fintan.halpenny@gmail.com>
X-Clacks-Overhead: GNU Terry Pratchett
diff --git a/flake.nix b/flake.nix
index 1799c18e3..f1ad9843a 100644
--- a/flake.nix
+++ b/flake.nix
@@ -192,6 +192,13 @@
cargoBuildCommand = "cargo build --release -p radicle-httpd";
doCheck = false;
});
+ rad-web = craneLib.buildPackage (commonArgs
+ // {
+ inherit (craneLib.crateNameFromCargoToml {cargoToml = ./radicle-httpd/Cargo.toml;});
+ inherit cargoArtifacts;
+ cargoBuildCommand = "cargo build --release --bin rad-web --manifest-path ./radicle-httpd/Cargo.toml";
+ doCheck = false;
+ });
};
apps.default = flake-utils.lib.mkApp {
@@ -218,6 +225,11 @@
drv = self.packages.${system}.radicle-httpd;
};
+ apps.rad-web = flake-utils.lib.mkApp {
+ name = "rad-web";
+ drv = self.packages.${system}.rad-web;
+ };
+
devShells.default = craneLib.devShell {
# Extra inputs can be added here; cargo and rustc are provided by default.
packages = [
diff --git a/radicle-httpd/Cargo.toml b/radicle-httpd/Cargo.toml
index 0dba5bf60..39939f7c1 100644
--- a/radicle-httpd/Cargo.toml
+++ b/radicle-httpd/Cargo.toml
@@ -14,6 +14,14 @@ logfmt = [
"tracing-subscriber/env-filter"
]
+[[bin]]
+name = "radicle-httpd"
+path = "src/main.rs"
+
+[[bin]]
+name = "rad-web"
+path = "src/bin/rad-web.rs"
+
[dependencies]
anyhow = { version = "1" }
axum = { version = "0.7.2", default-features = false, features = ["json", "query", "tokio", "http1"] }
commit 1da826b0cc4ca63378290fd71bbdbd9ab1f2f090
Author: Fintan Halpenny <fintan.halpenny@gmail.com>
Date: Mon Feb 19 13:40:14 2024 +0000
nix: use rust-overlay for toolchain pinning
To ensure the Nix derivations are using the correct toolchain, defined
in the `rust-toolchain` file, use the `rust-overlay` library.
Also remove the `fenix` input, since this was actually never used and
was an artefact of some copy-paste shenanigans.
Signed-off-by: Fintan Halpenny <fintan.halpenny@gmail.com>
X-Clacks-Overhead: GNU Terry Pratchett
diff --git a/flake.lock b/flake.lock
index e13dbde67..9e7bcddec 100644
--- a/flake.lock
+++ b/flake.lock
@@ -36,27 +36,6 @@
"type": "github"
}
},
- "fenix": {
- "inputs": {
- "nixpkgs": [
- "nixpkgs"
- ],
- "rust-analyzer-src": []
- },
- "locked": {
- "lastModified": 1701930186,
- "narHash": "sha256-t9uIiU1fE7VXi3t460iOuAUW8Ece9mowRKva1aw48zI=",
- "owner": "nix-community",
- "repo": "fenix",
- "rev": "aeb764a8e4c16da3f36b200a302552d8e457b9f4",
- "type": "github"
- },
- "original": {
- "owner": "nix-community",
- "repo": "fenix",
- "type": "github"
- }
- },
"flake-utils": {
"inputs": {
"systems": "systems"
@@ -95,9 +74,32 @@
"inputs": {
"advisory-db": "advisory-db",
"crane": "crane",
- "fenix": "fenix",
"flake-utils": "flake-utils",
- "nixpkgs": "nixpkgs"
+ "nixpkgs": "nixpkgs",
+ "rust-overlay": "rust-overlay"
+ }
+ },
+ "rust-overlay": {
+ "inputs": {
+ "flake-utils": [
+ "flake-utils"
+ ],
+ "nixpkgs": [
+ "nixpkgs"
+ ]
+ },
+ "locked": {
+ "lastModified": 1708308739,
+ "narHash": "sha256-FtKWP6d51kz8282jfziNNcCBpAvEzv2TtKH6dYIXCuA=",
+ "owner": "oxalica",
+ "repo": "rust-overlay",
+ "rev": "d45281ce1027a401255db01ea44972afbc569b7e",
+ "type": "github"
+ },
+ "original": {
+ "owner": "oxalica",
+ "repo": "rust-overlay",
+ "type": "github"
}
},
"systems": {
diff --git a/flake.nix b/flake.nix
index 927cfc6a5..1799c18e3 100644
--- a/flake.nix
+++ b/flake.nix
@@ -9,10 +9,12 @@
inputs.nixpkgs.follows = "nixpkgs";
};
- fenix = {
- url = "github:nix-community/fenix";
- inputs.nixpkgs.follows = "nixpkgs";
- inputs.rust-analyzer-src.follows = "";
+ rust-overlay = {
+ url = "github:oxalica/rust-overlay";
+ inputs = {
+ nixpkgs.follows = "nixpkgs";
+ flake-utils.follows = "flake-utils";
+ };
};
flake-utils.url = "github:numtide/flake-utils";
@@ -31,18 +33,22 @@
self,
nixpkgs,
crane,
- fenix,
flake-utils,
advisory-db,
+ rust-overlay,
...
}:
flake-utils.lib.eachDefaultSystem (system: let
pname = "Heartwood";
- pkgs = nixpkgs.legacyPackages.${system};
+ pkgs = import nixpkgs {
+ inherit system;
+ overlays = [(import rust-overlay)];
+ };
inherit (pkgs) lib;
- craneLib = crane.lib.${system};
+ rustToolChain = pkgs.rust-bin.fromRustupToolchainFile ./rust-toolchain;
+ craneLib = (crane.mkLib pkgs).overrideToolchain rustToolChain;
srcFilters = path: type:
# Allow sql schemas
Exit code: 0
shell: 'cargo --version rustc --version cargo fmt --check cargo clippy --all-targets --workspace -- --deny clippy::all cargo build --all-targets --workspace cargo doc --workspace cargo test --workspace --no-fail-fast '
Commands:
$ podman run --name ef988331-fb6c-40d9-a891-ef4b51ebbc3a -v /opt/radcis/ci.rad.levitte.org/cci/state/ef988331-fb6c-40d9-a891-ef4b51ebbc3a/s:/ef988331-fb6c-40d9-a891-ef4b51ebbc3a/s:ro -v /opt/radcis/ci.rad.levitte.org/cci/state/ef988331-fb6c-40d9-a891-ef4b51ebbc3a/w:/ef988331-fb6c-40d9-a891-ef4b51ebbc3a/w -w /ef988331-fb6c-40d9-a891-ef4b51ebbc3a/w -v /opt/radcis/ci.rad.levitte.org/.radicle:/${id}/.radicle:ro -e RAD_HOME=/${id}/.radicle rust:trixie bash /ef988331-fb6c-40d9-a891-ef4b51ebbc3a/s/script.sh
+ cargo --version
info: syncing channel updates for '1.74-x86_64-unknown-linux-gnu'
info: latest update on 2023-12-07, rust version 1.74.1 (a28077b28 2023-12-04)
info: downloading component 'cargo'
info: downloading component 'rust-std'
info: downloading component 'rustc'
info: installing component 'cargo'
info: installing component 'rust-std'
info: installing component 'rustc'
cargo 1.74.1 (ecb9851af 2023-10-18)
+ rustc --version
rustc 1.74.1 (a28077b28 2023-12-04)
+ cargo fmt --check
error: 'cargo-fmt' is not installed for the toolchain '1.74-x86_64-unknown-linux-gnu'.
To install, run `rustup component add --toolchain 1.74-x86_64-unknown-linux-gnu rustfmt`
Exit code: 1
{
"response": "finished",
"result": "failure"
}