{"slug":"redash","tag":"v26.9.0-CE-ubuntu24.04-r3","current":true,"account":false,"tarball":"ReadyStack-redash-v26.9.0-CE-ubuntu24.04-r3.tar.gz","tarball_sha256":"0a6d7ba1793dd1df237d96dbf2a7c57c223a2d7651b462db3a1cd46df2b5373c","generated_at":"2026-10-29T19:23:38Z","dockerfile":"Dockerfile.offline.pinned","build_script":"BUILD_OFFLINE.sh","pins":{"upstream":{"repo":"https://github.com/getredash/redash","ref":"v26.9.0","commit":"42fdf9d4a0fdb83841130ab78f69899a224f281b","url":"https://github.com/getredash/redash/tree/42fdf9d4a0fdb83841130ab78f69899a224f281b"},"fetches":[{"kind":"git","url":"https://github.com/getredash/redash","ref":"v${REDASH_VERSION}"},{"kind":"http","url":"https://www.python.org/ftp/python/3.13.16/Python-3.13.16.tar.xz"}],"bases":[{"image":"ubuntu:24.04","digest":"sha256:24737cef17f4e22b1977df7d9a05e77c4e28b7da5b8911f8d8ccda136bf3573c"}],"toolchain":{"buildkit":"moby/buildkit:v0.31.2","buildkit_image_digest":"sha256:e0e67ea9c4bb07bdef683e29f70f3b623d1eb9c82274a9ec04e6bb0511449fb0","builder_images":["ubuntu:24.04@sha256:24737cef17f4e22b1977df7d9a05e77c4e28b7da5b8911f8d8ccda136bf3573c"]},"build_method":"source-rebuild-python","source_date_epoch":1790246112,"source_date_epoch_utc":"2026-09-24T10:35:12Z","target":{"image":"readystack/redash:v26.9.0-CE-ubuntu24.04-r3","image_manifest_digest":"sha256:b3c9ce83782aca3c67fa2946c8d721523e2b78c0906edde5293ced895ea3d4c5","config_digest":"sha256:01a788d1b5433c6eb7961b2740b450b188289cea028c923cbbb91abecb4fc703"},"checksummed_files":1454},"files":[{"path":"BASES.tsv","size":121,"sha256":"0da49a3ea98fcaa345080b1a4230d2c798b395f71854063c2af657eb53a8a2e0","public":"full","lines":1,"url":"/api/recipe/redash/v26.9.0-CE-ubuntu24.04-r3/files/BASES.tsv","text":"ubuntu:24.04@sha256:24737cef17f4e22b1977df7d9a05e77c4e28b7da5b8911f8d8ccda136bf3573c\tbases/ubuntu_24.04_24737cef17f4.oci\n"},{"path":"BUILD_OFFLINE.sh","size":6738,"sha256":"83299978ccd02a0b69e163d760da1211b401bbfa35a3184ca674dc37ff876732","public":"preview","lines":125,"preview":{"text":"#!/usr/bin/env bash\n# =============================================================================\n# ReadyStack — offline reproducible rebuild.\n#\n# Rebuilds this product's image from THIS ARCHIVE ALONE, with no network access\n# of any kind, and prints the resulting linux/amd64 image-manifest digest.\n# Run ./VERIFY_OFFLINE.sh afterwards to assert it equals the published digest.\n#\n# Requirements: linux/amd64 Docker host, docker buildx >= 0.30, jq, tar.\n# No git, no registry access, no additional tooling.\n#\n#   ./BUILD_OFFLINE.sh                the rebuild (OCI image + a docker-loadable copy)\n#   ./BUILD_OFFLINE.sh --provenance   the same rebuild with SLSA v1 build provenance (mode=max) attached to the OCI\n#                                     image, generated by BuildKit, not by any build step. Run on your own hardened,\n#                                     isolated build platform and sign that provenance with a key the build cannot\n#                                     reach, and the result meets SLSA Build Level 3 (see REBUILD.md). The image\n#                                     digest is the same either way.\n# =============================================================================\nset -euo pipefail\nPROVENANCE=0\nfor arg in \"$@\"; do\n  case \"$arg\" in\n    --provenance) PROVENANCE=1 ;;\n    -h|--help) sed -n '2,20p' \"$0\"; exit 0 ;;","lines_shown":24,"lines_total":125}},{"path":"CHECKSUMS.sha256","size":206338,"sha256":"9b90f293e2167a908607ca9f04b7ce18dec25a7e39155c4a48d5a3d27c1c303a","public":"account","lines":1454},{"path":"DOCKERFILE_NAME.txt","size":26,"sha256":"9aadd1ede68e016a6f163c97befc5ff2fcdc8ebd4f84b108dba63cb195fa8c84","public":"full","lines":1,"url":"/api/recipe/redash/v26.9.0-CE-ubuntu24.04-r3/files/DOCKERFILE_NAME.txt","text":"Dockerfile.offline.pinned\n"},{"path":"Dockerfile","size":7345,"sha256":"582688723f43413225d6237cfa555bd0b44c7fc58121f18124d8e783fb716a01","public":"account","lines":71},{"path":"Dockerfile.offline","size":7345,"sha256":"582688723f43413225d6237cfa555bd0b44c7fc58121f18124d8e783fb716a01","public":"account","lines":71},{"path":"Dockerfile.offline.pinned","size":7345,"sha256":"582688723f43413225d6237cfa555bd0b44c7fc58121f18124d8e783fb716a01","public":"preview","lines":71,"preview":{"text":"# Redash v26.9.0 (BSD-2-Clause) HERMETIC OFFLINE BUILD. --network=none.\n# CPython 3.13.16 COMPILED HERE, offline (--network=none), from python.org's tarball (sha256 re-checked) and\n# the vendored build debs, by the same command the vendor stage ran; linked against Ubuntu's libraries.\nFROM ubuntu:24.04@sha256:24737cef17f4e22b1977df7d9a05e77c4e28b7da5b8911f8d8ccda136bf3573c AS cpython\nARG SOURCE_DATE_EPOCH=1790246112\nENV SOURCE_DATE_EPOCH=${SOURCE_DATE_EPOCH}\nCOPY vendored/redash-src/python/debs/ /tmp/cpython-debs/\nCOPY vendored/redash-src/python/Python-3.13.16.tar.xz /tmp/Python-3.13.16.tar.xz\nRUN set --; for f in /tmp/cpython-debs/*.deb; do [ -e \"$f\" ] && set -- \"$@\" \"$f\"; done; \\\n    for pass in 1 2 3 4 5; do [ $# -eq 0 ] || dpkg -i --skip-same-version \"$@\" >/dev/null 2>&1 && break; done; \\\n    dpkg --configure -a && bad= && for d in \"$@\"; do p=$(dpkg-deb -f \"$d\" Package) v=$(dpkg-deb -f \"$d\" Version); \\\n      case \"$(dpkg-query -W -f='${Version} ${db:Status-Abbrev}' \"$p\" 2>/dev/null)\" in \"$v ii\"*) ;; *) bad=\"$bad $p=$v\" ;; esac; done && \\\n    { [ -z \"$bad\" ] || { echo \"vendored debs not installed at their vendored version:$bad\" >&2; false; }; } && \\\n    : \"${SOURCE_DATE_EPOCH:?the CPython build needs SOURCE_DATE_EPOCH}\" && \\\n    echo \"f4b1bfb3c79b5bb11b8d228a12504163b4c0dab4d679828d8f5f26b6cb6ab35d  /tmp/Python-3.13.16.tar.xz\" | sha256sum -c - && \\\n    mkdir -p /usr/src/python && tar -xJf /tmp/Python-3.13.16.tar.xz -C /usr/src/python --strip-components=1 --no-same-owner && \\\n    rm -rf /tmp/cpython-debs /tmp/Python-3.13.16.tar.xz && cd /usr/src/python && \\\n    export DEB_BUILD_MAINT_OPTIONS=optimize=-lto && \\\n    PYCF=\"$(dpkg-buildflags --get CFLAGS) $(dpkg-buildflags --get CPPFLAGS)\" && PYLD=\"$(dpkg-buildflags --get LDFLAGS)\" && \\\n    ./configure --build=x86_64-linux-gnu --prefix=/usr/local --enable-shared --enable-loadable-sqlite-extensions --enable-option-checking=fatal --disable-test-modules --without-static-libpython --with-ensurepip=install --with-system-expat --without-system-libmpdec --with-dbmliborder= py_cv_module__dbm=n/a py_cv_module__gdbm=n/a py_cv_module__tkinter=n/a && \\\n    make -j\"$(nproc)\" \"EXTRA_CFLAGS=$PYCF\" \"LDFLAGS=$PYLD,--strip-all\" && \\\n    rm python && make -j\"$(nproc)\" \"EXTRA_CFLAGS=$PYCF\" \"LDFLAGS=$PYLD,--strip-all,-rpath='\\$\\$ORIGIN/../lib'\" python && \\\n    make install COMPILEALL_OPTS=--invalidation-mode=checked-hash && \\\n    cd / && rm -rf /usr/src/python /usr/local/lib/python3.13/idlelib /usr/local/lib/python3.13/tkinter /usr/local/lib/python3.13/turtledemo /usr/local/bin/idle3* && \\","lines_shown":24,"lines_total":71}},{"path":"Dockerfile.vendor","size":11635,"sha256":"9b2eceafd755fb11ceb16cfec545c20a0c7ee54c72944cb1818e7bdae2a74a17","public":"account","lines":135},{"path":"MANIFEST.txt","size":107483,"sha256":"32633d3085f97877134d04aea5959a3b7b380eb7206a18ab5546ed77bceb856c","public":"account","lines":1455},{"path":"SOURCE_DATE_EPOCH.txt","size":11,"sha256":"d19f0a1e9cbe5141adf696bb1ed33e012e8e47247dc7033931380c59206d8afa","public":"full","lines":1,"url":"/api/recipe/redash/v26.9.0-CE-ubuntu24.04-r3/files/SOURCE_DATE_EPOCH.txt","text":"1790246112\n"},{"path":"TARGET_DIGEST.txt","size":433,"sha256":"99931a24d1a5b0f363c543e623c71a7a179477a7bab43058dff601d3e6c8d835","public":"full","lines":8,"url":"/api/recipe/redash/v26.9.0-CE-ubuntu24.04-r3/files/TARGET_DIGEST.txt","text":"image_manifest_digest=sha256:b3c9ce83782aca3c67fa2946c8d721523e2b78c0906edde5293ced895ea3d4c5\nconfig_digest=sha256:01a788d1b5433c6eb7961b2740b450b188289cea028c923cbbb91abecb4fc703\ntag=readystack/redash:v26.9.0-CE-ubuntu24.04-r3\nprobe_port=5000\nprobe_path=/ping\nprobe_timeout=300\nverify_boot=skip\nverify_boot_reason=this image needs db, redis (not part of this archive); boot it with your own services as the admin handbook describes\n"},{"path":"VERIFY_OFFLINE.sh","size":7331,"sha256":"8b036b1f9a7f7deb4dbab14ef6b7c40622d2820904e891b8845ba3580e924506","public":"account","lines":128},{"path":"constraints.txt","size":1874,"sha256":"77c8dbb0ec5dd0052b56a6cd6794542d62f8751f7862282c19434b6598448696","public":"account","lines":35},{"path":"docs/PROVENANCE.md","size":1702,"sha256":"4e6f01f750e43c494d158ee4d08d559d7da01d70d32fbcd7240b703495fad2fa","public":"account","lines":28},{"path":"docs/REBUILD.md","size":5131,"sha256":"241586a4d8b676c0fa5bcb6cdc05b55c1d3f12b48239971080fce0bdd0ee23a1","public":"account","lines":59},{"path":"docs/VERIFY.md","size":1957,"sha256":"e5ba0a15061c1af37ade37b1fb5af1768e0b7d6401c5d3a76ee65a930ee2addf","public":"account","lines":34},{"path":"docs/provenance/BASE_IMAGE_DIGESTS.lock","size":49,"sha256":"712ff1bab6b7be997f188403a261b437ae30778294965855b2f2c8f9952e6d5d","public":"full","lines":2,"url":"/api/recipe/redash/v26.9.0-CE-ubuntu24.04-r3/files/docs/provenance/BASE_IMAGE_DIGESTS.lock","text":"# base images for redash (resolve at build_kit)\n\n"},{"path":"docs/provenance/BUILD_RECIPE.json","size":2863,"sha256":"dd30b8c01e3c3763db90a491632afae787b006a929863daf52cf64eff11f6f7a","public":"account","lines":24},{"path":"docs/provenance/CUSTODY_INPUTS.json","size":648,"sha256":"4af2b03813a64ef98f540d10d9fba0d8cc276255f68fe11aabe2fa4bb8608570","public":"account","lines":17},{"path":"docs/provenance/SOURCE_FILE_MANIFEST.json","size":68097,"sha256":"8684309723c16e09b71721d06ca1515af2ad3e7f6dc35d4c329242810ca913d1","public":"account","lines":1295},{"path":"docs/provenance/SOURCE_TREE_HASH.json","size":306,"sha256":"cc112acdc21e479bb62b419c2e3c55c1d947d3a4862be96c501b575feefe59e7","public":"full","lines":9,"url":"/api/recipe/redash/v26.9.0-CE-ubuntu24.04-r3/files/docs/provenance/SOURCE_TREE_HASH.json","text":"{\n  \"schema\": \"kitforge.source_tree_hash.v1\",\n  \"slug\": \"redash\",\n  \"repo\": \"https://github.com/getredash/redash\",\n  \"ref\": \"v26.9.0\",\n  \"commit\": \"42fdf9d4a0fdb83841130ab78f69899a224f281b\",\n  \"tree_listing_sha256\": \"973cb2459034cd07deb972d5e4ede590ec4baf788e37a7b13356be9f19233577\",\n  \"file_count\": 1288\n}"},{"path":"docs/provenance/SYSTEM_PINNING.lock","size":1,"sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","public":"account","lines":1},{"path":"docs/provenance/TOOLCHAIN.lock","size":1266,"sha256":"22c705cd4c7ea00dfebad0a3659b852975ecc0af6276f0d2ea29d28c2557d086","public":"account","lines":36},{"path":"entrypoint-aio.sh","size":922,"sha256":"6f9f5cc8c322dfba2c6c4bd5223080c730e6d877e09e2c0ac40c86af5e3f22b5","public":"account","lines":13},{"path":"rebuild.json","size":1220,"sha256":"c8601e216dd360dc0eade4d5d4c4a7cf285d884bc3e74d67cf5a51ba7b6cf87e","public":"account","lines":31},{"path":"supervisor-redash.conf","size":894,"sha256":"27897d9533b286bda1a57791328d8efdfda6e18f9eaad78273a742a1617768ec","public":"account","lines":37},{"path":"toolchain/BUILDKIT_TAG.txt","size":22,"sha256":"fcd530eeb02b063d2f047adad6eef896422a8e8d558513e5f09b2a262be32573","public":"full","lines":1,"url":"/api/recipe/redash/v26.9.0-CE-ubuntu24.04-r3/files/toolchain/BUILDKIT_TAG.txt","text":"moby/buildkit:v0.31.2\n"}],"skipped":[],"kit_adds":{"bases":{"files":5,"bytes":29771169},"docs":{"files":1343,"bytes":13605344},"toolchain":{"files":1,"bytes":111529472},"vendored":{"files":80,"bytes":434699833}},"links":{"page":"https://readystack.dev/products/redash/recipe","signup":"https://readystack.dev/login.html?create=1&next=%2Fproducts%2Fredash%2Frecipe","kit":"https://readystack.dev/buy.html?product=redash"}}