datacenterbingo/flake.nix
Sergei Poljanski 062611fa21
Some checks failed
Build and Deploy to Production / test (push) Failing after 21s
Build and Deploy to Production / build (push) Has been skipped
Build and Deploy to Production / deploy (push) Has been skipped
Initial import of the public datacenter bingo site
The bingo card ran inside the asxpio container, dispatched by Host.
Give the public site its own repo, image and deploy so it can be
released and mirrored independently of asxp.io.

Editing stays in the asxp.io admin, which keeps owning the schema and
the photo pipeline; this app only reads the shared bingo tables and the
bingo/ photos, through a read-only DB role and MinIO user. Tests load a
snapshot of the asxpio-built schema (test/schema.sql).

Assisted-by: Claude:opus-5
2026-10-12 03:48:06 +04:00

46 lines
1.1 KiB
Nix

{
description = "Datacenter bingo (datacenterbingo.xyz)";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
};
outputs = { self, nixpkgs }:
let
system = "x86_64-linux";
pkgs = nixpkgs.legacyPackages.${system};
in
{
devShells.${system}.default = pkgs.mkShell {
buildInputs = [
pkgs.ruby_3_4
pkgs.bundler
pkgs.openssl
pkgs.zlib
pkgs.libyaml
pkgs.postgresql.lib
pkgs.postgresql
];
shellHook = ''
export GEM_HOME="$PWD/.gems"
export PATH="$GEM_HOME/bin:$PATH"
export BUNDLE_PATH="$GEM_HOME"
if [ -f .env ]; then
set -a
source .env
set +a
fi
if [ ! -f .gems/.bundled ] || [ Gemfile -nt .gems/.bundled ]; then
echo "Installing gems..."
bundle install --quiet && mkdir -p .gems && touch .gems/.bundled
fi
echo "bingo dev shell ready"
echo " bundle exec rerun -- rackup -p 3000 - start with auto-reload"
'';
};
};
}