Compare commits

..

2 commits

Author SHA1 Message Date
99c71f0790
docs: update Nix usage instructions
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I8717b49f21f777003787a663feb0467a6a6a6964
2026-02-01 14:44:10 +03:00
05b3dea1c6
nix: initial tooling; add NixOS module
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I5ff8dfa450ec405e2ead5d16e0de90856a6a6964
2026-02-01 14:44:09 +03:00

View file

@ -6,21 +6,31 @@
outputs = {
self,
nixpkgs,
}: {
packages = {
x86_64-linux = let pkgs = nixpkgs.legacyPackages.x86_64-linux; in { default = pkgs.callPackage ./nix/package.nix {}; };
aarch64-linux = let pkgs = nixpkgs.legacyPackages.aarch64-linux; in { default = pkgs.callPackage ./nix/package.nix {}; };
x86_64-darwin = let pkgs = nixpkgs.legacyPackages.x86_64-darwin; in { default = pkgs.callPackage ./nix/package.nix {}; };
aarch64-darwin = let pkgs = nixpkgs.legacyPackages.aarch64-darwin; in { default = pkgs.callPackage ./nix/package.nix {}; };
}: let
systems = [
"x86_64-linux"
"aarch64-linux"
"x86_64-darwin"
"aarch64-darwin"
];
forEachSystem = f: nixpkgs.lib.genAttrs systems (system: f nixpkgs.legacyPackages.${system});
in {
nixosModules = {
troutbot = import ./nix/modules/nixos.nix self;
default = self.nixosModules.troutbot;
};
devShells = {
x86_64-linux = let pkgs = nixpkgs.legacyPackages.x86_64-linux; in { default = pkgs.mkShell { packages = [pkgs.nodejs-slim_22 pkgs.pnpm]; }; };
aarch64-linux = let pkgs = nixpkgs.legacyPackages.aarch64-linux; in { default = pkgs.mkShell { packages = [pkgs.nodejs-slim_22 pkgs.pnpm]; }; };
x86_64-darwin = let pkgs = nixpkgs.legacyPackages.x86_64-darwin; in { default = pkgs.mkShell { packages = [pkgs.nodejs-slim_22 pkgs.pnpm]; }; };
aarch64-darwin = let pkgs = nixpkgs.legacyPackages.aarch64-darwin; in { default = pkgs.mkShell { packages = [pkgs.nodejs-slim_22 pkgs.pnpm]; }; };
};
packages = forEachSystem (pkgs: {
troutbot = pkgs.callPackage ./nix/package.nix {};
default = self.packages.${pkgs.hostPlatform.system}.troutbot;
});
nixosModules.troutbot = import ./nix/modules/nixos.nix self;
devShells = forEachSystem (pkgs: {
default = pkgs.mkShell {
name = "troutbot-dev";
packages = [pkgs.nodejs-slim pkgs.pnpm];
};
});
};
}