From daa5447c35333a1e62938554bd75ba9d3640d30e Mon Sep 17 00:00:00 2001 From: Anthony Rabbito Date: Fri, 14 Aug 2026 21:43:58 -0400 Subject: [PATCH 1/2] chore: package freight in flox Signed-off-by: Anthony Rabbito --- .flox/.gitattributes | 1 + .flox/.gitignore | 5 + .flox/env.json | 4 + .flox/env/manifest.lock | 720 +++++++++++++++++++++++++++++ .flox/env/manifest.toml | 34 ++ .flox/telemetry_id | 1 + .github/workflows/flox-publish.yml | 30 ++ .github/workflows/go-releaser.yml | 5 + .gitignore | 5 + Makefile | 4 + assets/.goreleaser.yaml | 2 + 11 files changed, 811 insertions(+) create mode 100644 .flox/.gitattributes create mode 100644 .flox/.gitignore create mode 100644 .flox/env.json create mode 100644 .flox/env/manifest.lock create mode 100644 .flox/env/manifest.toml create mode 100644 .flox/telemetry_id create mode 100644 .github/workflows/flox-publish.yml diff --git a/.flox/.gitattributes b/.flox/.gitattributes new file mode 100644 index 0000000..bb5491e --- /dev/null +++ b/.flox/.gitattributes @@ -0,0 +1 @@ +env/manifest.lock linguist-generated=true linguist-language=JSON diff --git a/.flox/.gitignore b/.flox/.gitignore new file mode 100644 index 0000000..8d21186 --- /dev/null +++ b/.flox/.gitignore @@ -0,0 +1,5 @@ +run/ +cache/ +lib/ +log/ +!env/ diff --git a/.flox/env.json b/.flox/env.json new file mode 100644 index 0000000..e15ca53 --- /dev/null +++ b/.flox/env.json @@ -0,0 +1,4 @@ +{ + "name": "freight", + "version": 1 +} diff --git a/.flox/env/manifest.lock b/.flox/env/manifest.lock new file mode 100644 index 0000000..e126ec1 --- /dev/null +++ b/.flox/env/manifest.lock @@ -0,0 +1,720 @@ +{ + "lockfile-version": 1, + "manifest": { + "schema-version": "1.14.0", + "install": { + "git": { + "pkg-path": "git" + }, + "gnumake": { + "pkg-path": "gnumake" + }, + "go": { + "pkg-path": "go" + }, + "goreleaser": { + "pkg-path": "goreleaser" + }, + "iana-etc": { + "pkg-path": "iana-etc" + }, + "jq": { + "pkg-path": "jq" + }, + "tzdata": { + "pkg-path": "tzdata" + } + }, + "options": { + "systems": [ + "aarch64-darwin", + "aarch64-linux", + "x86_64-linux" + ] + }, + "build": { + "freight": { + "command": " goreleaser build --single-target --snapshot --clean\n\n mkdir -p \"$out/bin\"\n cp dist/freight_*/freight \"$out/bin/freight\"\n chmod +x \"$out/bin/freight\"\n", + "runtime-packages": [ + "tzdata", + "iana-etc" + ], + "sandbox": "off", + "version": { + "command": "jq -r '.\".\"' .release-please-manifest.json" + }, + "description": "Zero-dependency Git hook orchestrator driven by a declarative JSON manifest" + } + } + }, + "packages": [ + { + "attr_path": "git", + "broken": false, + "derivation": "/nix/store/wwxphpil01qgaad46jsvqs26j9mfzpcz-git-2.55.0.drv", + "description": "Distributed version control system", + "install_id": "git", + "license": "GPL-2.0", + "locked_url": "https://github.com/flox/nixpkgs?rev=2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "name": "git-2.55.0", + "pname": "git", + "rev": "2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "rev_count": 1051473, + "rev_date": "2026-08-10T17:52:38Z", + "scrape_date": "2026-08-12T05:00:27.467202Z", + "stabilities": [ + "unstable" + ], + "unfree": false, + "version": "2.55.0", + "outputs_to_install": [ + "out" + ], + "outputs": { + "doc": "/nix/store/y34pxb3x3h1gyvcfvanqlfjzm0c86cb4-git-2.55.0-doc", + "out": "/nix/store/rim5n939lwjc8mah63ld1q31i6n7bvf0-git-2.55.0" + }, + "system": "aarch64-darwin", + "group": "toplevel", + "priority": 5 + }, + { + "attr_path": "git", + "broken": false, + "derivation": "/nix/store/awjgry0bp70mykwb0ph58nw4ishs66zb-git-2.55.0.drv", + "description": "Distributed version control system", + "install_id": "git", + "license": "GPL-2.0", + "locked_url": "https://github.com/flox/nixpkgs?rev=2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "name": "git-2.55.0", + "pname": "git", + "rev": "2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "rev_count": 1051473, + "rev_date": "2026-08-10T17:52:38Z", + "scrape_date": "2026-08-12T05:34:37.078960Z", + "stabilities": [ + "unstable" + ], + "unfree": false, + "version": "2.55.0", + "outputs_to_install": [ + "out" + ], + "outputs": { + "debug": "/nix/store/nsck4ncjjmdy8c5h83yw297c7xxv64xx-git-2.55.0-debug", + "doc": "/nix/store/bz8bdi34lg4w10kxs9bm93658ary5rrz-git-2.55.0-doc", + "out": "/nix/store/v2iradivx07xjqwk2q71i57pwxw6wh4g-git-2.55.0" + }, + "system": "aarch64-linux", + "group": "toplevel", + "priority": 5 + }, + { + "attr_path": "git", + "broken": false, + "derivation": "/nix/store/r1lgs9xs6pxv7d5xmlr7m1fpjhzyg7ar-git-2.55.0.drv", + "description": "Distributed version control system", + "install_id": "git", + "license": "GPL-2.0", + "locked_url": "https://github.com/flox/nixpkgs?rev=2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "name": "git-2.55.0", + "pname": "git", + "rev": "2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "rev_count": 1051473, + "rev_date": "2026-08-10T17:52:38Z", + "scrape_date": "2026-08-12T06:14:58.661988Z", + "stabilities": [ + "unstable" + ], + "unfree": false, + "version": "2.55.0", + "outputs_to_install": [ + "out" + ], + "outputs": { + "debug": "/nix/store/rwiamhfaqkns90xsalafayg01afk3pza-git-2.55.0-debug", + "doc": "/nix/store/bddpyi6cgkp3v8f58i900hymgfvkyag5-git-2.55.0-doc", + "out": "/nix/store/6f0qqak4qbcrbw4f750phr88c9yhpf5s-git-2.55.0" + }, + "system": "x86_64-linux", + "group": "toplevel", + "priority": 5 + }, + { + "attr_path": "gnumake", + "broken": false, + "derivation": "/nix/store/qkmyhkzsp0syiajszd2igd4nl5zn4p3q-gnumake-4.4.1.drv", + "description": "Tool to control the generation of non-source files from sources", + "install_id": "gnumake", + "license": "GPL-3.0-or-later", + "locked_url": "https://github.com/flox/nixpkgs?rev=2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "name": "gnumake-4.4.1", + "pname": "gnumake", + "rev": "2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "rev_count": 1051473, + "rev_date": "2026-08-10T17:52:38Z", + "scrape_date": "2026-08-12T05:00:27.625007Z", + "stabilities": [ + "unstable" + ], + "unfree": false, + "version": "4.4.1", + "outputs_to_install": [ + "man", + "out" + ], + "outputs": { + "doc": "/nix/store/qpb2zaah86v6z1b0f40y90m6kf42hy3i-gnumake-4.4.1-doc", + "info": "/nix/store/dw5r16j2bsfpznbnzk3bbgxi3czy0rvn-gnumake-4.4.1-info", + "man": "/nix/store/av26gjivcsjdhq68pg6wb1l9f0ixakbv-gnumake-4.4.1-man", + "out": "/nix/store/rhw2r5z1rbp9msj03kf8i4rq1hygnm0f-gnumake-4.4.1" + }, + "system": "aarch64-darwin", + "group": "toplevel", + "priority": 5 + }, + { + "attr_path": "gnumake", + "broken": false, + "derivation": "/nix/store/w54rcbkppj3y2agjh5fkfgf48g7458z8-gnumake-4.4.1.drv", + "description": "Tool to control the generation of non-source files from sources", + "install_id": "gnumake", + "license": "GPL-3.0-or-later", + "locked_url": "https://github.com/flox/nixpkgs?rev=2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "name": "gnumake-4.4.1", + "pname": "gnumake", + "rev": "2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "rev_count": 1051473, + "rev_date": "2026-08-10T17:52:38Z", + "scrape_date": "2026-08-12T05:34:37.870516Z", + "stabilities": [ + "unstable" + ], + "unfree": false, + "version": "4.4.1", + "outputs_to_install": [ + "man", + "out" + ], + "outputs": { + "debug": "/nix/store/fc4qn0vswxpj2qmprk0p0nvill18z7hb-gnumake-4.4.1-debug", + "doc": "/nix/store/ffz5ypa2rwi78c6c9syncnpwhhdhaqr1-gnumake-4.4.1-doc", + "info": "/nix/store/kj5yr5dpvzij2x83ig9y0bp3dbvgsyic-gnumake-4.4.1-info", + "man": "/nix/store/fa0k4ps7a35yxf902shfzz8gmd8a9x2g-gnumake-4.4.1-man", + "out": "/nix/store/wadg45zgfyi9a4dcm5fy3qvlas76cr2z-gnumake-4.4.1" + }, + "system": "aarch64-linux", + "group": "toplevel", + "priority": 5 + }, + { + "attr_path": "gnumake", + "broken": false, + "derivation": "/nix/store/fp58w5my653rg2zj1aq5xgyi58f9y4vp-gnumake-4.4.1.drv", + "description": "Tool to control the generation of non-source files from sources", + "install_id": "gnumake", + "license": "GPL-3.0-or-later", + "locked_url": "https://github.com/flox/nixpkgs?rev=2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "name": "gnumake-4.4.1", + "pname": "gnumake", + "rev": "2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "rev_count": 1051473, + "rev_date": "2026-08-10T17:52:38Z", + "scrape_date": "2026-08-12T06:14:59.501876Z", + "stabilities": [ + "unstable" + ], + "unfree": false, + "version": "4.4.1", + "outputs_to_install": [ + "man", + "out" + ], + "outputs": { + "debug": "/nix/store/1a2srjw3r7sif10sh4zl3k0zin0f09xm-gnumake-4.4.1-debug", + "doc": "/nix/store/15y7ym18qm8dk03b7fnpc9bvccccm33q-gnumake-4.4.1-doc", + "info": "/nix/store/p18m4dcs9wylvddhprcczaaqqns2sb1d-gnumake-4.4.1-info", + "man": "/nix/store/8ayxbdiddzn28damz1f9gb0asx1j409b-gnumake-4.4.1-man", + "out": "/nix/store/r60jpv4jr5h50f0rj1k5adlwic2vgldn-gnumake-4.4.1" + }, + "system": "x86_64-linux", + "group": "toplevel", + "priority": 5 + }, + { + "attr_path": "go", + "broken": false, + "derivation": "/nix/store/nai0r884zly4zrzxzx02cb9pgnjizpi8-go-1.26.5.drv", + "description": "Go Programming language", + "install_id": "go", + "license": "BSD-3-Clause", + "locked_url": "https://github.com/flox/nixpkgs?rev=2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "name": "go-1.26.5", + "pname": "go", + "rev": "2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "rev_count": 1051473, + "rev_date": "2026-08-10T17:52:38Z", + "scrape_date": "2026-08-12T05:00:27.637595Z", + "stabilities": [ + "unstable" + ], + "unfree": false, + "version": "1.26.5", + "outputs_to_install": [ + "out" + ], + "outputs": { + "out": "/nix/store/8g06ffyaas333hzhsjcd50nqbsldqjhh-go-1.26.5" + }, + "system": "aarch64-darwin", + "group": "toplevel", + "priority": 5 + }, + { + "attr_path": "go", + "broken": false, + "derivation": "/nix/store/rbvap710527sdym1fq99nd9sapfwgw1g-go-1.26.5.drv", + "description": "Go Programming language", + "install_id": "go", + "license": "BSD-3-Clause", + "locked_url": "https://github.com/flox/nixpkgs?rev=2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "name": "go-1.26.5", + "pname": "go", + "rev": "2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "rev_count": 1051473, + "rev_date": "2026-08-10T17:52:38Z", + "scrape_date": "2026-08-12T05:34:37.886101Z", + "stabilities": [ + "unstable" + ], + "unfree": false, + "version": "1.26.5", + "outputs_to_install": [ + "out" + ], + "outputs": { + "out": "/nix/store/p8wbwrmaqggbg1griwkcjag8lbkgz0qg-go-1.26.5" + }, + "system": "aarch64-linux", + "group": "toplevel", + "priority": 5 + }, + { + "attr_path": "go", + "broken": false, + "derivation": "/nix/store/2s46bm7d49srfl31ay0304yg56vfi8q6-go-1.26.5.drv", + "description": "Go Programming language", + "install_id": "go", + "license": "BSD-3-Clause", + "locked_url": "https://github.com/flox/nixpkgs?rev=2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "name": "go-1.26.5", + "pname": "go", + "rev": "2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "rev_count": 1051473, + "rev_date": "2026-08-10T17:52:38Z", + "scrape_date": "2026-08-12T06:14:59.519594Z", + "stabilities": [ + "unstable" + ], + "unfree": false, + "version": "1.26.5", + "outputs_to_install": [ + "out" + ], + "outputs": { + "out": "/nix/store/pwj3x44pp735yb038fnmqckyyra9k29x-go-1.26.5" + }, + "system": "x86_64-linux", + "group": "toplevel", + "priority": 5 + }, + { + "attr_path": "goreleaser", + "broken": false, + "derivation": "/nix/store/5cmsnfpp0066xlz0j16xdln49xigxpdl-goreleaser-2.17.1.drv", + "description": "Deliver Go binaries as fast and easily as possible", + "install_id": "goreleaser", + "license": "MIT", + "locked_url": "https://github.com/flox/nixpkgs?rev=2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "name": "goreleaser-2.17.1", + "pname": "goreleaser", + "rev": "2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "rev_count": 1051473, + "rev_date": "2026-08-10T17:52:38Z", + "scrape_date": "2026-08-12T05:00:27.737745Z", + "stabilities": [ + "unstable" + ], + "unfree": false, + "version": "2.17.1", + "outputs_to_install": [ + "out" + ], + "outputs": { + "out": "/nix/store/z38i86fijgf16lf2z3zym71bx0hwdv9r-goreleaser-2.17.1" + }, + "system": "aarch64-darwin", + "group": "toplevel", + "priority": 5 + }, + { + "attr_path": "goreleaser", + "broken": false, + "derivation": "/nix/store/a8w8ikbgvjr9c5vpd99pqbm8263ljmgm-goreleaser-2.17.1.drv", + "description": "Deliver Go binaries as fast and easily as possible", + "install_id": "goreleaser", + "license": "MIT", + "locked_url": "https://github.com/flox/nixpkgs?rev=2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "name": "goreleaser-2.17.1", + "pname": "goreleaser", + "rev": "2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "rev_count": 1051473, + "rev_date": "2026-08-10T17:52:38Z", + "scrape_date": "2026-08-12T05:34:38.035104Z", + "stabilities": [ + "unstable" + ], + "unfree": false, + "version": "2.17.1", + "outputs_to_install": [ + "out" + ], + "outputs": { + "out": "/nix/store/9x14j5m9z1yjijv41xiwsppz49ykcqp6-goreleaser-2.17.1" + }, + "system": "aarch64-linux", + "group": "toplevel", + "priority": 5 + }, + { + "attr_path": "goreleaser", + "broken": false, + "derivation": "/nix/store/pnnqdqw3yc4wwcvwsmd2mp452x4ls75q-goreleaser-2.17.1.drv", + "description": "Deliver Go binaries as fast and easily as possible", + "install_id": "goreleaser", + "license": "MIT", + "locked_url": "https://github.com/flox/nixpkgs?rev=2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "name": "goreleaser-2.17.1", + "pname": "goreleaser", + "rev": "2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "rev_count": 1051473, + "rev_date": "2026-08-10T17:52:38Z", + "scrape_date": "2026-08-12T06:14:59.678373Z", + "stabilities": [ + "unstable" + ], + "unfree": false, + "version": "2.17.1", + "outputs_to_install": [ + "out" + ], + "outputs": { + "out": "/nix/store/j5fiy9ic6vhhzgq1yp2dwp9cgpqmfi11-goreleaser-2.17.1" + }, + "system": "x86_64-linux", + "group": "toplevel", + "priority": 5 + }, + { + "attr_path": "iana-etc", + "broken": false, + "derivation": "/nix/store/pqy14sm1s4vyd62ykyb620wd0fv767lz-iana-etc-20251215.drv", + "description": "IANA protocol and port number assignments (/etc/protocols and /etc/services)", + "install_id": "iana-etc", + "license": "MIT", + "locked_url": "https://github.com/flox/nixpkgs?rev=2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "name": "iana-etc-20251215", + "pname": "iana-etc", + "rev": "2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "rev_count": 1051473, + "rev_date": "2026-08-10T17:52:38Z", + "scrape_date": "2026-08-12T05:00:43.467462Z", + "stabilities": [ + "unstable" + ], + "unfree": false, + "version": "20251215", + "outputs_to_install": [ + "out", + "out" + ], + "outputs": { + "out": "/nix/store/kmvrlsyd2k2hp8c4rdk5z6y05pxashpr-iana-etc-20251215" + }, + "system": "aarch64-darwin", + "group": "toplevel", + "priority": 5 + }, + { + "attr_path": "iana-etc", + "broken": false, + "derivation": "/nix/store/rbdhac957x4l20krwj1z3p5b2xcpphlw-iana-etc-20251215.drv", + "description": "IANA protocol and port number assignments (/etc/protocols and /etc/services)", + "install_id": "iana-etc", + "license": "MIT", + "locked_url": "https://github.com/flox/nixpkgs?rev=2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "name": "iana-etc-20251215", + "pname": "iana-etc", + "rev": "2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "rev_count": 1051473, + "rev_date": "2026-08-10T17:52:38Z", + "scrape_date": "2026-08-12T05:34:55.896260Z", + "stabilities": [ + "unstable" + ], + "unfree": false, + "version": "20251215", + "outputs_to_install": [ + "out", + "out", + "out" + ], + "outputs": { + "out": "/nix/store/bknwi0mk48rvgfzggxl795lmspmmcz46-iana-etc-20251215" + }, + "system": "aarch64-linux", + "group": "toplevel", + "priority": 5 + }, + { + "attr_path": "iana-etc", + "broken": false, + "derivation": "/nix/store/db9z4dl34h66ia05da1jqda6mknmd60p-iana-etc-20251215.drv", + "description": "IANA protocol and port number assignments (/etc/protocols and /etc/services)", + "install_id": "iana-etc", + "license": "MIT", + "locked_url": "https://github.com/flox/nixpkgs?rev=2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "name": "iana-etc-20251215", + "pname": "iana-etc", + "rev": "2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "rev_count": 1051473, + "rev_date": "2026-08-10T17:52:38Z", + "scrape_date": "2026-08-12T06:15:18.743253Z", + "stabilities": [ + "unstable" + ], + "unfree": false, + "version": "20251215", + "outputs_to_install": [ + "out", + "out", + "out" + ], + "outputs": { + "out": "/nix/store/jab95mm9b2qb8ygk45l600mb2pp5xbr4-iana-etc-20251215" + }, + "system": "x86_64-linux", + "group": "toplevel", + "priority": 5 + }, + { + "attr_path": "jq", + "broken": false, + "derivation": "/nix/store/45j7x06lz3jrdwsahvlds5n1v0fq59wc-jq-1.8.2.drv", + "description": "Lightweight and flexible command-line JSON processor", + "install_id": "jq", + "license": "MIT", + "locked_url": "https://github.com/flox/nixpkgs?rev=2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "name": "jq-1.8.2", + "pname": "jq", + "rev": "2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "rev_count": 1051473, + "rev_date": "2026-08-10T17:52:38Z", + "scrape_date": "2026-08-12T05:00:44.296140Z", + "stabilities": [ + "unstable" + ], + "unfree": false, + "version": "1.8.2", + "outputs_to_install": [ + "bin", + "man" + ], + "outputs": { + "bin": "/nix/store/si622aj9znsy96kdwsrg54dxzp9m35qw-jq-1.8.2-bin", + "dev": "/nix/store/zcvl9cnw5a44f74gw8aa8fh8cfynjc76-jq-1.8.2-dev", + "doc": "/nix/store/4s66blj2afdqbzaq8ilw30v7kpjb6ypw-jq-1.8.2-doc", + "man": "/nix/store/jp2c61il2ycagni1j5c1jrglnypvbf5k-jq-1.8.2-man", + "out": "/nix/store/z28yr7h99fi3mch4dh3bc50bjk6malsl-jq-1.8.2" + }, + "system": "aarch64-darwin", + "group": "toplevel", + "priority": 5 + }, + { + "attr_path": "jq", + "broken": false, + "derivation": "/nix/store/lpj1cw1ipnqdc3d3wxz4ry5lcf6hk075-jq-1.8.2.drv", + "description": "Lightweight and flexible command-line JSON processor", + "install_id": "jq", + "license": "MIT", + "locked_url": "https://github.com/flox/nixpkgs?rev=2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "name": "jq-1.8.2", + "pname": "jq", + "rev": "2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "rev_count": 1051473, + "rev_date": "2026-08-10T17:52:38Z", + "scrape_date": "2026-08-12T05:34:57.174712Z", + "stabilities": [ + "unstable" + ], + "unfree": false, + "version": "1.8.2", + "outputs_to_install": [ + "bin", + "bin", + "man" + ], + "outputs": { + "bin": "/nix/store/rjaclwgima9ssysv7v0h2hq46g8sikd4-jq-1.8.2-bin", + "dev": "/nix/store/yy0mx8yjmzkk154mmp1vx4b0kz0ndw6y-jq-1.8.2-dev", + "doc": "/nix/store/yqx0xva9dq6rnvxgwcadrmni1l8ympa1-jq-1.8.2-doc", + "man": "/nix/store/1w15pijismpwnainv71a6pdnsypjnqg7-jq-1.8.2-man", + "out": "/nix/store/0x995g1z807ynhzsh2f6yj0jsw6pr50f-jq-1.8.2" + }, + "system": "aarch64-linux", + "group": "toplevel", + "priority": 5 + }, + { + "attr_path": "jq", + "broken": false, + "derivation": "/nix/store/bcp8pk4lzbfxrlgicm9i8jlwidg6x6jg-jq-1.8.2.drv", + "description": "Lightweight and flexible command-line JSON processor", + "install_id": "jq", + "license": "MIT", + "locked_url": "https://github.com/flox/nixpkgs?rev=2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "name": "jq-1.8.2", + "pname": "jq", + "rev": "2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "rev_count": 1051473, + "rev_date": "2026-08-10T17:52:38Z", + "scrape_date": "2026-08-12T06:15:20.174753Z", + "stabilities": [ + "unstable" + ], + "unfree": false, + "version": "1.8.2", + "outputs_to_install": [ + "bin", + "bin", + "man" + ], + "outputs": { + "bin": "/nix/store/4b6f9wb1qak318gk7mxlfkhril6lxpcx-jq-1.8.2-bin", + "dev": "/nix/store/sp8a7n50g32lzzsc7dz09ry2vc9bh4y0-jq-1.8.2-dev", + "doc": "/nix/store/dp4rs4vpwp44c7vvgskj1hly0d6xqf2m-jq-1.8.2-doc", + "man": "/nix/store/4zwaa20khsi2drbg16i5z3wxbjf88mm6-jq-1.8.2-man", + "out": "/nix/store/z438hrlp3j75bpmq87ymzabb8vrda8ps-jq-1.8.2" + }, + "system": "x86_64-linux", + "group": "toplevel", + "priority": 5 + }, + { + "attr_path": "tzdata", + "broken": false, + "derivation": "/nix/store/g7w46dlmp178iy9125v92ysm2har28av-tzdata-2026c.drv", + "description": "Database of current and historical time zones", + "install_id": "tzdata", + "license": "[ BSD-3-Clause, Public Domain ]", + "locked_url": "https://github.com/flox/nixpkgs?rev=2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "name": "tzdata-2026c", + "pname": "tzdata", + "rev": "2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "rev_count": 1051473, + "rev_date": "2026-08-10T17:52:38Z", + "scrape_date": "2026-08-12T05:03:09.838292Z", + "stabilities": [ + "unstable" + ], + "unfree": false, + "version": "2026c", + "outputs_to_install": [ + "bin", + "bin", + "man", + "man" + ], + "outputs": { + "bin": "/nix/store/xfx7h4y8jqsnrd9nab4610bybl5yk9km-tzdata-2026c-bin", + "dev": "/nix/store/x21l2id7z0iq91k29i8y1pjshbdz06mz-tzdata-2026c-dev", + "man": "/nix/store/5hls0klazy215p8wi0c5jqh6b6k011ns-tzdata-2026c-man", + "out": "/nix/store/47h50kyzbgx8zdy0d3xd4yzmy8pq55hv-tzdata-2026c" + }, + "system": "aarch64-darwin", + "group": "toplevel", + "priority": 5 + }, + { + "attr_path": "tzdata", + "broken": false, + "derivation": "/nix/store/jgn9pk71lihcnqz00npl5qmk96vrlmk5-tzdata-2026c.drv", + "description": "Database of current and historical time zones", + "install_id": "tzdata", + "license": "[ BSD-3-Clause, Public Domain ]", + "locked_url": "https://github.com/flox/nixpkgs?rev=2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "name": "tzdata-2026c", + "pname": "tzdata", + "rev": "2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "rev_count": 1051473, + "rev_date": "2026-08-10T17:52:38Z", + "scrape_date": "2026-08-12T05:38:02.796734Z", + "stabilities": [ + "unstable" + ], + "unfree": false, + "version": "2026c", + "outputs_to_install": [ + "bin", + "bin", + "man", + "man" + ], + "outputs": { + "bin": "/nix/store/dbrfaikb9dpyx201fy49hz0h1f1dhi6k-tzdata-2026c-bin", + "dev": "/nix/store/dcqisgp4fwp0y8hp11984804mn8f1dr4-tzdata-2026c-dev", + "man": "/nix/store/z2jy8b4cjcmi5008bc8qxvs6k4qr7g0k-tzdata-2026c-man", + "out": "/nix/store/zldvyvcxx4rwb4r1b92c34fcs634623w-tzdata-2026c" + }, + "system": "aarch64-linux", + "group": "toplevel", + "priority": 5 + }, + { + "attr_path": "tzdata", + "broken": false, + "derivation": "/nix/store/92gzbdipapm76dwa8ckxlfzdc67a9rp8-tzdata-2026c.drv", + "description": "Database of current and historical time zones", + "install_id": "tzdata", + "license": "[ BSD-3-Clause, Public Domain ]", + "locked_url": "https://github.com/flox/nixpkgs?rev=2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "name": "tzdata-2026c", + "pname": "tzdata", + "rev": "2fcb964de67fcf60b43471c55d5d99e61a9ccb5a", + "rev_count": 1051473, + "rev_date": "2026-08-10T17:52:38Z", + "scrape_date": "2026-08-12T06:18:32.400117Z", + "stabilities": [ + "unstable" + ], + "unfree": false, + "version": "2026c", + "outputs_to_install": [ + "bin", + "bin", + "man", + "man" + ], + "outputs": { + "bin": "/nix/store/k14l2l8ci9hn2imw65g68s4k6h0dn2gk-tzdata-2026c-bin", + "dev": "/nix/store/8g5fs5prvfmp8idb23y39mnjfhmsbcqy-tzdata-2026c-dev", + "man": "/nix/store/wqya4b31yii21xfxc5i0n1wh795f2a3p-tzdata-2026c-man", + "out": "/nix/store/2nndxyf3phkb5aggxm3c16sapa0f49kz-tzdata-2026c" + }, + "system": "x86_64-linux", + "group": "toplevel", + "priority": 5 + } + ] +} diff --git a/.flox/env/manifest.toml b/.flox/env/manifest.toml new file mode 100644 index 0000000..b8ac7a7 --- /dev/null +++ b/.flox/env/manifest.toml @@ -0,0 +1,34 @@ +schema-version = "1.14.0" + + +[install] +go.pkg-path = "go" +git.pkg-path = "git" +jq.pkg-path = "jq" +gnumake.pkg-path = "gnumake" +goreleaser.pkg-path = "goreleaser" +tzdata.pkg-path = "tzdata" +iana-etc.pkg-path = "iana-etc" + + +[build] + +[build.freight] +sandbox = "off" +description = "Zero-dependency Git hook orchestrator driven by a declarative JSON manifest" +version.command = "jq -r '.\".\"' .release-please-manifest.json" +runtime-packages = ["tzdata", "iana-etc"] +command = ''' + goreleaser build --single-target --snapshot --clean + + mkdir -p "$out/bin" + cp dist/freight_*/freight "$out/bin/freight" + chmod +x "$out/bin/freight" +''' + +[options] +systems = [ + "aarch64-darwin", + "aarch64-linux", + "x86_64-linux", +] diff --git a/.flox/telemetry_id b/.flox/telemetry_id new file mode 100644 index 0000000..2c58e49 --- /dev/null +++ b/.flox/telemetry_id @@ -0,0 +1 @@ +4d70d3f1-cd96-469e-b522-39457265a501 diff --git a/.github/workflows/flox-publish.yml b/.github/workflows/flox-publish.yml new file mode 100644 index 0000000..d4fcea2 --- /dev/null +++ b/.github/workflows/flox-publish.yml @@ -0,0 +1,30 @@ +name: flox publish + +on: + workflow_call: + workflow_dispatch: + +permissions: + contents: read + +jobs: + publish: + strategy: + fail-fast: false + matrix: + include: + - runner: ubuntu-latest + - runner: ubuntu-24.04-arm + - runner: macos-latest + runs-on: ${{ matrix.runner }} + steps: + - name: Checkout + uses: actions/checkout@v7 + with: + fetch-depth: 0 + - name: Install Flox + uses: flox/install-flox-action@v2 + - name: Publish to Flox Catalog + run: flox publish --org devbytes freight + env: + FLOX_FLOXHUB_TOKEN: ${{ secrets.FLOX_FLOXHUB_TOKEN }} diff --git a/.github/workflows/go-releaser.yml b/.github/workflows/go-releaser.yml index 5f361ef..ff365e2 100644 --- a/.github/workflows/go-releaser.yml +++ b/.github/workflows/go-releaser.yml @@ -32,3 +32,8 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GORELEASER_AUTH_TOKEN: ${{ secrets.GORELEASER_AUTH_TOKEN}} + + flox-publish: + needs: goreleaser + uses: ./.github/workflows/flox-publish.yml + secrets: inherit diff --git a/.gitignore b/.gitignore index 5b83f95..0fe598f 100644 --- a/.gitignore +++ b/.gitignore @@ -2,7 +2,12 @@ railcar freight railcar.json conductor +.idea/ # Parser build output for binaries /assets/dist/ dist/ + + +# Flox +result** \ No newline at end of file diff --git a/Makefile b/Makefile index 1bffe32..fd32259 100644 --- a/Makefile +++ b/Makefile @@ -5,6 +5,10 @@ build-freight: .Phony: build-all build-all: conductor-build-binaries build-freight +.Phony: flox-build +flox-build: + flox build freight + .Phony: conductor-build-binaries conductor-build-binaries: goreleaser release --snapshot --clean --config=./assets/.goreleaser.yaml diff --git a/assets/.goreleaser.yaml b/assets/.goreleaser.yaml index 64e5bc9..2372863 100644 --- a/assets/.goreleaser.yaml +++ b/assets/.goreleaser.yaml @@ -12,6 +12,8 @@ builds: main: ./cmd/conductor/main.go env: - CGO_ENABLED=0 + flags: + - -trimpath goos: - linux - windows From 83b0e648240063dafc39fb9a8f76f328ce7d085c Mon Sep 17 00:00:00 2001 From: Anthony Rabbito Date: Fri, 14 Aug 2026 21:53:46 -0400 Subject: [PATCH 2/2] fix: eol at eof Signed-off-by: Anthony Rabbito --- .gitignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 0fe598f..51b18ce 100644 --- a/.gitignore +++ b/.gitignore @@ -10,4 +10,4 @@ dist/ # Flox -result** \ No newline at end of file +result**