mirror of
https://github.com/nexu-io/open-design.git
synced 2026-05-31 19:04:39 +07:00
* nix: add official flake with home-manager and nixos modules
* Pin pnpm version
* Format README.md
* Populate PATH files to discover installed CLIs
* Revert "Populate PATH files to discover installed CLIs"
This reverts commit 18d88781a88b8781913cf5a8b680dfb38eabf7e4.
* Fix missing sqlite issue
* Fix system issue
* Reapply "Populate PATH files to discover installed CLIs"
This reverts commit d02ea994e6.
* Handle different ports for web frontend
* Provide documentation for getting pnpm hash
* Enable nix flake checks for code changes
* Set `OD_WEB_PORT` on daemon when declared
* fix: Fix environmentFile for macOS targets
* chore: Ignore nix and direnv related files
* fix: Read version directly from `package.json`
* feat: Make nix shell entry prettier
* chore: Update pnpm hashes
* chore: Bump `pnpm` hashes
* docs: Add blurb about dev shell in `README.md`
* Address review comments
* Add support for `OD_WEB_ORIGINS`
* Fix `isLocalSameOrigin`
* Update pnpm checksums
* docs: Update documentation on host origins
* Move allowedOrigins mapping out of the webFrontend.enable guard
* fix: Bump pnpm hashes
* Remove changes to `daemon` with `main` changes
`main` merged a feature that addressed our need for allowed origins.
Since this feature branch no longer needs it, remove any remaining
changes in `daemon` code so that this is a pure Nix change.
* Update documentation around `OD_DAEMON_URL`
* Rewrite option docs to match same-origin proxy contract
The port, webFrontend, and webFrontend.port option descriptions still
described OD_DAEMON_URL as the runtime contract for the SPA, but the
SPA issues relative /api/*, /artifacts/*, /frames/* requests and there
is no runtime daemon-URL injection. Rewrite the three blocks to
describe what the caddy / custom proxy must actually do.
* Document daemon-side requirements for custom-server proxy paths
The bring-your-own-server path in section (3) and the same-origin
contract in section (4) understated what the daemon needs: any proxy
whose origin differs from the daemon's bind (including loopback
split-port like 127.0.0.1:8080 while the daemon stays on :7457) is
403'd by the daemon's same-origin gate until told about that origin.
Add a callout under section (3)'s table, expand section (4) with a
decision table covering same-port, loopback split-port (OD_WEB_PORT or
webFrontend.allowedOrigins), and non-loopback (webFrontend.allowedOrigins)
cases, and rewrite the webFrontend.allowedOrigins option description to
enumerate the cases where it's required and surface OD_WEB_PORT as an
alternative for the loopback split-port case.
---------
Co-authored-by: lefarcen <935902669@qq.com>
187 lines
4.7 KiB
JSON
187 lines
4.7 KiB
JSON
{
|
|
"nodes": {
|
|
"dream2nix": {
|
|
"inputs": {
|
|
"nixpkgs": [
|
|
"nixpkgs"
|
|
],
|
|
"purescript-overlay": "purescript-overlay",
|
|
"pyproject-nix": "pyproject-nix"
|
|
},
|
|
"locked": {
|
|
"lastModified": 1765953015,
|
|
"narHash": "sha256-5FBZbbWR1Csp3Y2icfRkxMJw/a/5FGg8hCXej2//bbI=",
|
|
"owner": "nix-community",
|
|
"repo": "dream2nix",
|
|
"rev": "69eb01fa0995e1e90add49d8ca5bcba213b0416f",
|
|
"type": "github"
|
|
},
|
|
"original": {
|
|
"owner": "nix-community",
|
|
"repo": "dream2nix",
|
|
"type": "github"
|
|
}
|
|
},
|
|
"flake-compat": {
|
|
"flake": false,
|
|
"locked": {
|
|
"lastModified": 1696426674,
|
|
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
|
"owner": "edolstra",
|
|
"repo": "flake-compat",
|
|
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
|
"type": "github"
|
|
},
|
|
"original": {
|
|
"owner": "edolstra",
|
|
"repo": "flake-compat",
|
|
"type": "github"
|
|
}
|
|
},
|
|
"flake-utils": {
|
|
"inputs": {
|
|
"systems": "systems"
|
|
},
|
|
"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"
|
|
}
|
|
},
|
|
"home-manager": {
|
|
"inputs": {
|
|
"nixpkgs": [
|
|
"nixpkgs"
|
|
]
|
|
},
|
|
"locked": {
|
|
"lastModified": 1777679572,
|
|
"narHash": "sha256-egYNbRrkn+6SwTHinhdb6WUfzzdC3nXfCRqS321VylY=",
|
|
"owner": "nix-community",
|
|
"repo": "home-manager",
|
|
"rev": "9cb587ade2aa1b4a7257f0238d41072690b0ca4f",
|
|
"type": "github"
|
|
},
|
|
"original": {
|
|
"owner": "nix-community",
|
|
"repo": "home-manager",
|
|
"type": "github"
|
|
}
|
|
},
|
|
"nixpkgs": {
|
|
"locked": {
|
|
"lastModified": 1777268161,
|
|
"narHash": "sha256-bxrdOn8SCOv8tN4JbTF/TXq7kjo9ag4M+C8yzzIRYbE=",
|
|
"owner": "NixOS",
|
|
"repo": "nixpkgs",
|
|
"rev": "1c3fe55ad329cbcb28471bb30f05c9827f724c76",
|
|
"type": "github"
|
|
},
|
|
"original": {
|
|
"owner": "NixOS",
|
|
"ref": "nixos-unstable",
|
|
"repo": "nixpkgs",
|
|
"type": "github"
|
|
}
|
|
},
|
|
"purescript-overlay": {
|
|
"inputs": {
|
|
"flake-compat": "flake-compat",
|
|
"nixpkgs": [
|
|
"dream2nix",
|
|
"nixpkgs"
|
|
],
|
|
"slimlock": "slimlock"
|
|
},
|
|
"locked": {
|
|
"lastModified": 1728546539,
|
|
"narHash": "sha256-Sws7w0tlnjD+Bjck1nv29NjC5DbL6nH5auL9Ex9Iz2A=",
|
|
"owner": "thomashoneyman",
|
|
"repo": "purescript-overlay",
|
|
"rev": "4ad4c15d07bd899d7346b331f377606631eb0ee4",
|
|
"type": "github"
|
|
},
|
|
"original": {
|
|
"owner": "thomashoneyman",
|
|
"repo": "purescript-overlay",
|
|
"type": "github"
|
|
}
|
|
},
|
|
"pyproject-nix": {
|
|
"inputs": {
|
|
"nixpkgs": [
|
|
"dream2nix",
|
|
"nixpkgs"
|
|
]
|
|
},
|
|
"locked": {
|
|
"lastModified": 1763017646,
|
|
"narHash": "sha256-Z+R2lveIp6Skn1VPH3taQIuMhABg1IizJd8oVdmdHsQ=",
|
|
"owner": "pyproject-nix",
|
|
"repo": "pyproject.nix",
|
|
"rev": "47bd6f296502842643078d66128f7b5e5370790c",
|
|
"type": "github"
|
|
},
|
|
"original": {
|
|
"owner": "pyproject-nix",
|
|
"repo": "pyproject.nix",
|
|
"type": "github"
|
|
}
|
|
},
|
|
"root": {
|
|
"inputs": {
|
|
"dream2nix": "dream2nix",
|
|
"flake-utils": "flake-utils",
|
|
"home-manager": "home-manager",
|
|
"nixpkgs": "nixpkgs"
|
|
}
|
|
},
|
|
"slimlock": {
|
|
"inputs": {
|
|
"nixpkgs": [
|
|
"dream2nix",
|
|
"purescript-overlay",
|
|
"nixpkgs"
|
|
]
|
|
},
|
|
"locked": {
|
|
"lastModified": 1688756706,
|
|
"narHash": "sha256-xzkkMv3neJJJ89zo3o2ojp7nFeaZc2G0fYwNXNJRFlo=",
|
|
"owner": "thomashoneyman",
|
|
"repo": "slimlock",
|
|
"rev": "cf72723f59e2340d24881fd7bf61cb113b4c407c",
|
|
"type": "github"
|
|
},
|
|
"original": {
|
|
"owner": "thomashoneyman",
|
|
"repo": "slimlock",
|
|
"type": "github"
|
|
}
|
|
},
|
|
"systems": {
|
|
"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",
|
|
"version": 7
|
|
}
|