musiclink/flake.nix
Meta-Repo Bot f602c02f80 feat: Prepare for Nix deployment with integration tests and flake
This commit prepares the musiclink bot for production deployment on NixOS.

Changes:
- Refactored service layer to support Dependency Injection for API URLs.
- Added 'internal/bot/bot_integration_test.go' for mock-based integration testing.
- Added 'flake.nix' and 'flake.lock' for reproducible Nix builds.
- Added 'README.md', 'LICENSE', and '.gitignore'.
- Verified build and tests pass locally.
2026-01-16 21:57:13 +00:00

44 lines
1.1 KiB
Nix

{
description = "MusicLink Bot - A link converter sidecar for Matterbridge";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
utils.url = "github:numtide/flake-utils";
};
outputs = { self, nixpkgs, utils }:
utils.lib.eachDefaultSystem (system:
let
pkgs = import nixpkgs { inherit system; };
in
{
packages.default = pkgs.buildGoModule {
pname = "musiclink";
version = "0.1.0";
src = ./.;
# Run 'nix build' and update this hash if dependencies change
vendorHash = "sha256-Upjt0Q2G6x5vGf0bG0TS9uWrHBow8/cQsZexhMgVb2I=";
subPackages = [ "cmd/musiclink" ];
meta = with pkgs.lib; {
description = "Music link converter bot for Matterbridge";
homepage = "https://github.com/dan/musiclink";
license = licenses.mit;
maintainers = [ ];
};
};
devShells.default = pkgs.mkShell {
buildInputs = with pkgs; [
go
gopls
gotools
matterbridge
];
};
}
);
}