summaryrefslogtreecommitdiff
path: root/flake.nix
diff options
context:
space:
mode:
Diffstat (limited to 'flake.nix')
-rw-r--r--flake.nix114
1 files changed, 54 insertions, 60 deletions
diff --git a/flake.nix b/flake.nix
index d0080d5..899547c 100644
--- a/flake.nix
+++ b/flake.nix
@@ -4,69 +4,63 @@
nixpkgs.url = "github:nix-ocaml/nix-overlays";
};
- outputs = { self, nixpkgs, flake-utils }:
- flake-utils.lib.eachDefaultSystem (system:
- let
- pkgs = nixpkgs.legacyPackages.${system}.appendOverlays [
- (self: super: {
- ocamlPackages = super.ocaml-ng.ocamlPackages_5_1.overrideScope'
- (oself: osuper: {
- pg_query = osuper.pg_query.overrideAttrs (prev: {
- propagatedBuildInputs = prev.propagatedBuildInputs
- ++ [ osuper.cmdliner ];
- });
+ outputs = {
+ self,
+ nixpkgs,
+ flake-utils,
+ }:
+ flake-utils.lib.eachDefaultSystem (system: let
+ pkgs = nixpkgs.legacyPackages.${system}.appendOverlays [
+ (self: super: {
+ ocamlPackages =
+ super.ocaml-ng.ocamlPackages_5_1.overrideScope'
+ (oself: osuper: {
+ pg_query = osuper.pg_query.overrideAttrs (prev: {
+ propagatedBuildInputs =
+ prev.propagatedBuildInputs
+ ++ [osuper.cmdliner];
});
- })
- ];
-
- pkgs' = pkgs.pkgsCross.musl64;
-
- combattant = pkgs'.ocamlPackages.buildDunePackage {
- pname = "combattant";
- version = "0.0.1";
- src = ./.;
- buildInputs = with pkgs'.ocamlPackages; [
- ppx_rapper
- ppx_rapper_eio
- yojson
- eio_main
- piaf
- routes
- caqti-driver-postgresql
- ppx_expect
-
- logs
- ];
- };
+ });
+ })
+ ];
- in {
- devShells.default = pkgs'.mkShell rec {
- nativeBuildInputs = with pkgs'.ocamlPackages; [
- dune_3
- findlib
- ocaml
- ocaml-lsp
- ocamlformat
- pkgs.openjdk17
- ];
+ combattant = pkgs.ocamlPackages.buildDunePackage {
+ pname = "combattant";
+ version = "0.0.1";
+ src = ./.;
+ buildInputs = with pkgs.ocamlPackages; [
+ ppx_rapper
+ ppx_rapper_eio
+ yojson
+ eio_main
+ piaf
+ routes
+ caqti-dynload
+ caqti-driver-postgresql
+ caqti-driver-sqlite3
+ pkgs.sqlite
+ ppx_expect
- buildInputs = combattant.buildInputs
- ++ (with pkgs'.ocamlPackages; [ utop ]);
- };
-
- packages.default = combattant;
+ logs
+ ];
+ };
+ in {
+ devShells.default = pkgs.mkShell rec {
+ nativeBuildInputs = with pkgs.ocamlPackages; [
+ dune_3
+ findlib
+ ocaml
+ ocaml-lsp
+ ocamlformat
+ pkgs.openjdk17
+ pkgs.sqlite
+ ];
- packages.docker = pkgs.dockerTools.buildImage {
- name = "ghcr.io/molvrr/combattant";
- tag = "latest";
- copyToRoot = pkgs.buildEnv {
- name = "image-root";
- paths = [ pkgs.bashInteractive pkgs.coreutils pkgs.curl combattant ];
- pathsToLink = [ "/bin" ];
- };
- config = { Cmd = [ "combattant" ]; };
- };
+ buildInputs =
+ combattant.buildInputs
+ ++ (with pkgs.ocamlPackages; [utop]);
+ };
- formatter = pkgs.nixfmt;
- });
+ packages.default = combattant;
+ });
}